Python 熊猫:删除列显示在另一个数据框中的行
尽管标题令人困惑,但我想要的是: 数据帧1:Python 熊猫:删除列显示在另一个数据框中的行,python,pandas,Python,Pandas,尽管标题令人困惑,但我想要的是: 数据帧1: i | col|u 1 | col|u 2 | col|u 3 1 |数据1 |数据2 |数据3 2 |数据4 |数据4 |数据6 3 |数据7 |数据8 |数据9 数据帧2: i | col|u 1 | col|u 2 | col|u 3 1 |数据A |数据8 |数据B 2 |数据C |数据2 |数据D 3 | dataE | dataF | dataG 代码应该从数据帧2中删除行1和行2,因为列2的值出现在数据帧1的列2中。该列是特定的,代码不
i | col|u 1 | col|u 2 | col|u 3
1 |数据1 |数据2 |数据3
2 |数据4 |数据4 |数据6
3 |数据7 |数据8 |数据9
数据帧2:
i | col|u 1 | col|u 2 | col|u 3
1 |数据A |数据8 |数据B
2 |数据C |数据2 |数据D
3 | dataE | dataF | dataG
代码应该从数据帧2中删除行1和行2,因为列2的值出现在数据帧1的列2中。该列是特定的,代码不需要对所有列进行测试。因此,数据帧2在处理后应如下所示:
i | col|u 1 | col|u 2 | col|u 3
1 | dataE | dataF | dataG
它是使用isin的否定的掩码
df3 = df2[~df2.col_2.isin(df1.col_2)]
Out[942]:
i col_1 col_2 col_3
2 3 dataE dataF dataG
它是使用isin的否定的掩码
df3 = df2[~df2.col_2.isin(df1.col_2)]
Out[942]:
i col_1 col_2 col_3
2 3 dataE dataF dataG
这段代码就可以了。关键行是
~df2.col_2.isin(df1.col_2)
。isin()
函数的基本功能是遍历系列(df2.col_2
)并检查每个元素是否在参数系列中:df1.col_2
。它返回一系列与df2
索引相对应的布尔值。然后前面的~
将其取反,以获得唯一的(或不在df1
中的)。然后使用此选项过滤原始的df2
import pandas as pd
df1 = pd.DataFrame([['data1', 'data2', 'data3'],
['data4', 'data4', 'data6'] ,
['data7', 'data8', 'data9']],
columns=['col_1', 'col_2', 'col_3'])
df2 = pd.DataFrame([['dataA', 'data8', 'dataB'],
['dataC', 'data2', 'dataD'] ,
['dataE', 'dataF', 'dataG']],
columns=['col_1', 'col_2', 'col_3'])
keep = ~df2.col_2.isin(df1.col_2)
df = df2[keep]
这段代码就可以了。关键行是~df2.col_2.isin(df1.col_2)
。isin()
函数的基本功能是遍历系列(df2.col_2
)并检查每个元素是否在参数系列中:df1.col_2
。它返回一系列与df2
索引相对应的布尔值。然后前面的~
将其取反,以获得唯一的(或不在df1
中的)。然后使用此选项过滤原始的df2
import pandas as pd
df1 = pd.DataFrame([['data1', 'data2', 'data3'],
['data4', 'data4', 'data6'] ,
['data7', 'data8', 'data9']],
columns=['col_1', 'col_2', 'col_3'])
df2 = pd.DataFrame([['dataA', 'data8', 'dataB'],
['dataC', 'data2', 'dataD'] ,
['dataE', 'dataF', 'dataG']],
columns=['col_1', 'col_2', 'col_3'])
keep = ~df2.col_2.isin(df1.col_2)
df = df2[keep]
这个网站上的问题必须用英语提问,而不是葡萄牙语。我投票决定以离题的方式结束这个问题,因为它是葡萄牙语的,我刚刚翻译的。这个网站上的问题必须用英语提问,而不是葡萄牙语的。我投票决定以离题的方式结束这个问题,因为它是葡萄牙语的,我刚刚翻译的。