CauzeMania
2021-06-14T14:24:55+00:00
最近初学,蛋疼了
A是一个dataframe
我定义了一个函数fun1
def fun1(A):
_________B=A
_________以下对B进行各种操作计算(包括新增column)
运算完以后,A的column出现了增减
同样的再来一次:fun2
def fun2(A):
_________B=A[[挑出column]]
_________以下对B进行高中操作计算(包括新增column)
A未发生变化
草了,这什么鬼逻辑?fun1里面,赋值给B的是A的地址还是什么?为什么我操作B会对A影响?
fun2又是什么鬼?传的就是数值
这=在pandas框架下到底是什么鬼逻辑?
卧槽,nga这客户端又是什么鬼?好像把我打的空格吞掉了 。我在这里用_代替空格
看一眼b的内存地址就知道啦[img]http://img.nga.178.com/attachments/mon_201209/14/-47218_5052bc80140e3.png[/img]
所以我放弃pandas先去学openpyxl了[s:ac:哭笑][s:ac:哭笑]
[quote][pid=524765574,27220529,1]Reply[/pid] Post by [uid=18631030]Cheimera[/uid] (2021-06-15 22:35):
看一眼b的内存地址就知道啦[img]http://img.nga.178.com/attachments/mon_201209/14/-47218_5052bc80140e3.png[/img][/quote]卧槽不会看啊。。。物理狗,只要算几个数字
[s:ac:惊]
就感觉,pandas的各种运算,包括数据类型,好tm随意啊
引用(ref)和拷贝(copy)的区别
def fun1(A):
import copy
B = copy.deepcopy(A)
....
[quote][pid=524766464,27220529,1]Reply[/pid] Post by [uid=41709115]yinyilangzhu[/uid] (2021-06-15 22:38):
所以我放弃pandas先去学openpyxl了[s:ac:哭笑][s:ac:哭笑][/quote]我觉得matlab好用
那个用户界面方便的1B,设个断点,随算随停,鼠标双击就能打开矩阵检查数字
[quote][pid=524766756,27220529,1]Reply[/pid]
Post by [uid=2504017]九十九龙介[/uid] (2021-06-15 22:40):引用(ref)和拷贝(copy)的区别
def fun1(A):
import copy
B = copy.deepcopy(A)
....
[/quote]谢谢老哥。。。
问题是,这个等号,运算规则搞得就很随意。。。
[quote][pid=524766485,27220529,1]Reply[/pid] Post by [uid=62800840]乡村教师小田[/uid] (2021-06-15 22:38):
卧槽不会看啊。。。物理狗,只要算几个数字
[s:ac:惊]
就感觉,pandas的各种运算,包括数据类型,好tm随意啊[/quote]hex(id(var))[img]http://img.nga.178.com/attachments/mon_201209/14/-47218_5052bcbe35760.png[/img]
[quote][pid=524766464,27220529,1]Reply[/pid] Post by [uid=41709115]yinyilangzhu[/uid] (2021-06-15 22:38):
所以我放弃pandas先去学openpyxl了[s:ac:哭笑][s:ac:哭笑][/quote]后面有你哭的时候[s:ac:哭笑]
copy 和 deepcopy 的差别。前者相当于映射到同样的内存地址 本质上只还是同一个数据。后者相当于深复制了一个副本
[quote][pid=524767226,27220529,1]Reply[/pid] Post by [uid=61854609]Spartacus2BMarkii[/uid] (2021-06-15 22:42):
copy 和 deepcopy 的差别。前者相当于映射到同样的内存地址 本质上只还是同一个数据。后者相当于深复制了一个副本[/quote]明白了,谢谢老哥。。。
遇事不决csdn[s:ac:哭笑]我当初pandas处理csv文件里的数据就是这样的
遇事不决搜so
[url]https://stackoverflow.com/questions/27673231/why-should-i-make-a-copy-of-a-data-frame-in-pandas[/url]
[url]https://stackoverflow.com/questions/38835483/confusion-re-pandas-copy-of-slice-of-dataframe-warning[/url]
[quote][pid=524767174,27220529,1]Reply[/pid] Post by [uid=61595612]天佑中华8[/uid] (2021-06-15 22:42):
后面有你哭的时候[s:ac:哭笑][/quote]后来有了用到Excel的控件的时候,openpyxl居然不能正确识别。果然坑的很