通过pandas ix方法分配值的两种方式之间的差异

时间:2016-09-11 16:12:21

标签: python pandas numpy dataframe

我想知道为什么以前的任务方式(A)失败了。

任何人都能解释一下吗?

  • (A):.。然后切片
  • (B):.ix with slice indexer

pandas版本:0.18.0

a = pd.DataFrame({"A":[10,11,12]})
indexer = [0,1,2]

# orginal DataFrame
print(a)
#     A
# 0  10
# 1  11
# 2  12

# (A) assignment failed
a.ix[indexer,"A"][0] = 999
print(a)
#     A
# 0  10
# 1  11
# 2  12

# (B) assignment succeeded
a.ix[indexer[0],"A"] = 999
print(a)
#      A
# 0  999
# 1   11
# 2   12

提前谢谢。

注意:截至Pandas v0.20,.ix indexer is deprecated赞成.iloc / .loc

0 个答案:

没有答案