2024-04-26 21:41:40 发布
网友
我有一个包含两个元素的列表。你知道吗
我想将我的数据帧过滤到[column_a, column_b]在列表列表中的行。你知道吗
[column_a, column_b]
示例:
输入:
l = [ [0,1], [1,2] ] df = pd.DataFrame({'column_a' : [0, 1, 2], 'column_b' : [1, 3, 0]}) column_a column_b 0 0 1 1 1 3 2 2 0
预期产量:
column_a column_b 0 0 1
从列表创建df并合并:
df.merge(pd.DataFrame(l,columns=df.columns))
循环的一些时间一点也不坏
df[[x in l for x in df.values.tolist()]] Out[135]: column_a column_b 0 0 1
我的解决方案
l = [[0, 1], [1, 2]] df = pd.DataFrame({'column_a': [0, 1, 2], 'column_b': [1, 3, 0]}) for elem in l: df.loc[(df['column_a'] == elem[0]) & (df['column_b'] == elem[1]), 'Result'] = 1 df = df[df['Result'] == 1].drop(['Result'], axis=1)
输出:
从列表创建df并合并:
循环的一些时间一点也不坏
我的解决方案
输出:
相关问题 更多 >
编程相关推荐