我的数据框的列包含90j1
等字符串,这些字符串是唯一的。数据框已按该列排序。我需要的是截断包含特定值的行之前的所有行。这是一个例子:
df = pd.DataFrame(['90j1', '90j2', '90j3'])
print(df)
# 0
# 0 90j1
# 1 90j2
# 2 90j3
例如,我需要截断90j2
行之前的行。预期的产出将是:
print(truncated_df)
# 0
# 0 90j2
# 1 90j3
答案 0 :(得分:1)
以下是使用.iloc
df.iloc[df.loc[df[0]=='90j2'].index[0]:,:]
Out[356]:
0
1 90j2
2 90j3
答案 1 :(得分:1)
您可以使用pd.truncate
:
df.truncate(after=df.loc[df[0] == '90j2'].index[0])
或简单索引:
df.loc[:df.loc[df[0] == '90j2'].index[0]]
两者都导致:
0
0 90j1
1 90j2