p是一个pandas数据框,在Spyder控制台中查找如下:
java.lang.NoSuchFieldException: mTitleTextView
at java.lang.Class.getDeclaredField(Class.java:631)
我可以访问与'文件相对应的元素'专栏和' new_lines'行为:
In [1]: p
Out[1]:
ncloc files
ncloc Correlation Coefficient 1.000000 0.500000
NaN Sig. (2-tailed) NaN 0.000000
N 1600.000000 1600.000000
new_lines Correlation Coefficient 0.021537 0.021873
NaN Sig. (2-tailed) 0.242349 0.238163
N 1600.000000 1600.000000
classes Correlation Coefficient 0.978614 0.993551
NaN Sig. (2-tailed) 0.000000 0.000000
N 1600.000000 1600.000000
但输出的类型为' pandas.core.series.Series'。
我也可以访问数值(类型:numpy.float64):
In [2]: p['files']['new_lines']
Out[2]:
Correlation Coefficient 0.5
Name: files, dtype: float64
现在,我如何找出索引的实际行号' new_lines'在p是3?
我可以编写一个for循环来查找它,但应该有一种非常简单的方法来查找索引的行号' new_lines'。
找到这个的for循环方式如下:
In [3]: p['files'][3]
Out[3]: 0.5
所以,我有我的结果,即r_index变量中的行号。如何更有效地完成这项操作?
答案 0 :(得分:0)
您可以使用get_loc
。
import pandas as pd
df = pd.DataFrame(
{'ncloc': [1, 0], 'files': [0.5, 2]},
index=['lines', 'new_lines'])
print(df.index.get_loc('new_lines'))
>>> 1