我可以找到匹配的行,但是如何获取df的行号?
y = df.loc [ df [ 'month' ] == df3 [ 'month' ] ]
我需要y作为行数。
我可以获取索引值,但df的索引也是日期。
感谢。
答案 0 :(得分:2)
如果您不想重置索引,您只需添加一个包含行数的列:
import pandas as pd
df = pd.DataFrame({'month':[1,1,1,1,2,2,2]})
df.insert(0, 'row_num', range(0,len(df))) # here you insert the row count
df3 = pd.DataFrame({'month':[2,2,2,1,2,2,2]})
y = df.loc [ df [ 'month' ] == df3 [ 'month' ] ]
df
>>> df
row_num month
0 0 1
1 1 1
2 2 1
3 3 1
4 4 2
5 5 2
6 6 2
结果
>>> y['row_num']
3 3
4 4
5 5
6 6
答案 1 :(得分:1)
一种方法是reindexing,因为您希望索引是整数而不是日期。
y = df.loc[df['month'] == df3['month' ]].reset_index().index