在我看来,df.take()
与更常见的df.iloc[]
具有相同的功能。我检查了文档,但没有发现任何不同。在某些情况下,take()
比iloc[]
更可取吗?
答案 0 :(得分:0)
情况: 我收到以下错误消息,最后发现它挂在了.iloc上。
TypeError: unhashable type: 'list'
由于iloc返回的列表是可变的,因此代码不会进行求和。从.iloc更改为.take即可解决此问题。
#returns list
df3['sum_total']= df3.iloc[:,-30].sum(axis=[1])
#returns tuple and worked
df3['sum_total']= df3.take([-30], axis=1).sum(axis=1)
答案 1 :(得分:0)
有一些非常重要的区别: