输入:包含5列的CSV。
预期输出:' col1',' col2',' col3'的独特组合。
示例输入:
col1 col2 col3 col4 col5
0 A B C 11 30
1 A B C 52 10
2 B C A 15 14
3 B C A 1 91
预期输出示例:
col1 col2 col3
A B C
B C A
只是期待这个作为输出。我不需要col4和col5输出。并且也不需要任何金额,数量,意味着等。尝试使用熊猫来实现这一点,但没有运气。
我的代码:
input_df = pd.read_csv("input.csv");
output_df = input_df.groupby(['col1', 'col2', 'col3'])
此代码返回' pandas.core.groupby.DataFrameGroupBy对象,位于0x0000000009134278'。 但我需要像上面那样的数据帧。任何帮助非常感谢。
答案 0 :(得分:3)
df[['col1', 'col2', 'col3']].drop_duplicates()
答案 1 :(得分:0)
首先,您可以使用.drop()
删除col4
和col5
,因为您说您不需要它们。
df = df.drop(['col4', 'col5'], axis=1)
然后,您可以使用.drop_duplicates()
删除rows
,col1
和col2
中的重复col3
。
df = df.drop_duplicates(['col1', 'col2', 'col3'])
df
输出:
col1 col2 col3
0 A B C
2 B C A
您注意到在输出中索引为0, 2
而不是0,1
。要解决这个问题,你可以这样做:
df.index = range(len(df))
df
输出:
col1 col2 col3
0 A B C
1 B C A