Python 取决于行号的函数
在pandas中,是否可以引用函数的行号。我不是说,伊洛克 iloc获取一个位置,即一个行号,并返回一个数据帧值 我想访问数据帧中的位置号 例如,如果函数位于向下3行、跨2列的单元格中,我需要一种返回整数3的方法。不是位于该位置的条目Python 取决于行号的函数,python,pandas,numbers,row,Python,Pandas,Numbers,Row,在pandas中,是否可以引用函数的行号。我不是说,伊洛克 iloc获取一个位置,即一个行号,并返回一个数据帧值 我想访问数据帧中的位置号 例如,如果函数位于向下3行、跨2列的单元格中,我需要一种返回整数3的方法。不是位于该位置的条目 谢谢。考虑数据帧df df = pd.DataFrame([[1, 2], [3, 4]], ['a', 'b'], ['c', 'd']) df 和行行 row = df.ix['a'] row c 1 d 2 Name: a, dtype
谢谢。考虑数据帧
df
df = pd.DataFrame([[1, 2], [3, 4]], ['a', 'b'], ['c', 'd'])
df
和行行
row = df.ix['a']
row
c 1
d 2
Name: a, dtype: int64
这一行没有任何内容表明它是df
的第一行。这些信息基本上已经丢失了。。。有点
您可以接受@jezrael的建议并使用get\u loc
df.index.get_loc(row.name)
0
但这仅在索引唯一时有效
你唯一的另一个选择是当你得到它时跟踪它的位置。最好的方法是:
在df.iterrows()上使用enumerate
抱歉,我无法添加代码示例,但我在手机上。piRSquared证实了我的担心,他说信息丢失了。我想我每次都要做一个循环,或者添加一个带有数字的列(如果我对它们进行排序的话,这将被置乱:/)
谢谢大家。您能举一个实际数据帧的例子吗?这有用吗?我想你需要有另外一个原因。
for i, (idx, row) in enumerate(df.iterrows()):
print "row position: {:>3d}\nindex value: {:>4s}".format(i, idx)
print row, '\n'
row position: 0
index value: a
c 1
d 2
Name: a, dtype: int64
row position: 1
index value: b
c 3
d 4
Name: b, dtype: int64