上午,什么号码排是“X”出现在
我有一个熊猫数据帧:
df
Code
0 F5031032
1 F5546810
2 F117225534
3 F17770
4 F29157
我希望能够找出连续两个代码的坐。所以我期待的答案是:
Code Row
F5031032 1
F17770 4
感谢
上午,什么号码排是“X”出现在
我有一个熊猫数据帧:
df
Code
0 F5031032
1 F5546810
2 F117225534
3 F17770
4 F29157
我希望能够找出连续两个代码的坐。所以我期待的答案是:
Code Row
F5031032 1
F17770 4
感谢
试试这个
codes = ["F5031032", "F5546810", "F117225534", "F17770", "F29157"]
df = pd.DataFrame(data=codes, columns=['Code'])
df['Row'] = df.index+1
print df
IIUC您可以使用isin
的选择值,然后拿到指标idx
,如果指数不能从0
启动,使用get_indexer
:
print df
Code
2 F5031032
3 F5546810
4 F117225534
5 F17770
6 F29157
print df['Code'].isin(['F5031032','F17770'])
2 True
3 False
4 False
5 True
6 False
Name: Code, dtype: bool
idx = df[df['Code'].isin(['F5031032','F17770'])].index
print idx
Int64Index([2, 5], dtype='int64')
print df.index.get_indexer(idx)
[0 3]
df1 = df[df['Code'].isin(['F5031032','F17770'])].copy()
df1['Row'] = df.index.get_indexer(idx) + 1
print df1
Code Row
2 F5031032 1
5 F17770 4
不知道,如果你正在寻找这样的事情
In [10]: df_filter = df[df['Code'].isin(['F5031032', 'F17770'])]
In [11]: df_filter['Row'] = df_filter.index + 1
In [12]: df_filter
Out[12]:
Code Row
0 F5031032 1
3 F17770 4
我想,我失去了一些东西,但它只是'DF [ '行'] = df.index + 1'? – Zero