我正在编写一个程序,该程序读取一个文本文件并将数据以熊猫数据框的形式分类为名称,职务,公司和位置字段。除一两个异常值外,所有行的位置字段均相同。我想从df中删除这些行,并将它们放在单独的列表中。 示例:
Name Job Company Location
1. n1 j1 c1 l
2. n2 j2 c2 l
3. n3 j3 c3 x
4. n4 j4 c4 l
是否可以仅删除位置为“ x”(第3行)的行?
答案 0 :(得分:0)
我将这两个组提取到单独的DFS中
same_df = df.query('location == "<onethatisthesame>"')
然后我将重复此操作,但要使用!=来获取其他人
other_df = df.query('location =! "<onethatisthesame>"')
答案 1 :(得分:0)
您可以使用:
import pandas as pd
# df = df[df['location'] == yourRepeatedValue]
df = pd.DataFrame(columns = ['location'] )
df.at[1, 'location'] = 'mars'
df.at[2, 'location'] = 'pluto'
df.at[3, 'location'] = 'mars'
print(df)
df = df[df['location'] == 'mars']
print(df)
这将创建一个仅包含yourRepeatedValue
的新DataFrame。
在示例中,新的df
将不包含与'mars'
输出为:
location
1 mars
2 pluto
3 mars
location
1 mars
3 mars