相关疑难解决方法(0)

pandas loc vs. iloc vs. ix vs. at vs. iat?

最近开始从我的安全地点(R)扩展到Python,并且对于细胞定位/选择感到有些困惑Pandas.我已经阅读了文档,但我很难理解各种本地化/选择选项的实际意义.

  • 我有理由选择使用.loc.iloc超过最常用的选项.ix吗?
  • 我的理解是.loc,iloc,at,和iat可以提供一些保证正确性是.ix不能提供的,但我也看到了在那里.ix往往是一刀切最快的解决方案.
  • 请解释除了使用其他任何东西背后的现实世界,最佳实践推理.ix

python lookup indexing performance pandas

157
推荐指数
4
解决办法
9万
查看次数

在python中使用.loc进行选择

我在某人的iPython笔记本中看到了这段代码,我对此代码的工作原理感到非常困惑.据我所知,pd.loc []用作基于位置的索引器,其格式为:

df.loc[index,column_name]
Run Code Online (Sandbox Code Playgroud)

但是,在这种情况下,第一个索引似乎是一系列布尔值.有人可以向我解释这个选择是如何运作的.我试着阅读文档,但我无法找出解释.谢谢!

iris_data.loc[iris_data['class'] == 'versicolor', 'class'] = 'Iris-versicolor'
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

python selection ipython dataframe pandas

38
推荐指数
2
解决办法
11万
查看次数

Pandas indexing and Key error

Consider the following:

d = {'a': 0.0, 'b': 1.0, 'c': 2.0}

e = pd.Series(d, index = ['a', 'b', 'c'])

df = pd.DataFrame({ 'A' : 1.,'B' : e,'C' :pd.Timestamp('20130102')}).
Run Code Online (Sandbox Code Playgroud)

当我尝试通过以下方式访问 B 列的第一行时:

>>> df.B[0]
0.0
Run Code Online (Sandbox Code Playgroud)

我得到正确的结果。

但是,在阅读KeyError: 0 when accessing value in pandas series 之后,我假设,因为我已将索引指定为 'a'、'b' 和 'c',这是访问列第一行的正确方法B(使用位置参数)是: df.B.iloc[0] ,并且df.B[0]应该引发一个关键错误。我不知道我错过了什么。有人可以澄清在哪种情况下我会收到 Key Error 吗?

python indexing pandas

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

pandas ×3

python ×3

indexing ×2

dataframe ×1

ipython ×1

lookup ×1

performance ×1

selection ×1