我已经阅读了很多不同的加入方法,但仍然没有真正找到解决方案,我可以解决这个问题。希望得到一些意见或指导。
我有一个包含一组列的数据框,如下所示:
In [1]: df_old
Out[1]:
CID time_a time_b time_c time_d
dc12 4:14pm NaN NaN NaN
dc12 NaN 4:18pm NaN NaN
dc12 NaN NaN 4:44pm NaN
ab14 2:14pm NaN NaN NaN
ab14 NaN 3:18pm NaN NaN
ab14 NaN NaN 3:27pm NaN
ab14 NaN NaN NaN 4:15pm
我想要的是以下内容:
In [2]: df_new
Out[2]:
CID time_a time_b time_c time_d
dc12 4:14pm 4:18pm 4:44pm NaN
ab14 2:14pm 3:18pm 3:27pm 4:15pm
...
我认为有一种方法可以用df.groupby()来实现,但是我无法得到任何结果,并且想知道是否有人能指出我正确的方向。
非常感谢您的帮助!
答案 0 :(得分:2)
您可以使用CopyFile( "//192.168.168.81/htdocs/API/Pipedrive/Deals.csv";
"C:/Program Files/FileMaker/FileMaker/Server/Data/Documents/Deals.csv")
然后调用groupby
,这会给您看到的第一个非纳米值(这就是为什么我想知道是否只有一个):
.first()
这假设CID是列而不是索引。如果它是索引,请拨打>>> df.groupby("CID", as_index=False).first()
CID time_a time_b time_c time_d
0 ab14 2:14pm 3:18pm 3:27pm 4:15pm
1 dc12 4:14pm 4:18pm 4:44pm NaN
>>> df.groupby("CID", as_index=False, sort=False).first()
CID time_a time_b time_c time_d
0 dc12 4:14pm 4:18pm 4:44pm NaN
1 ab14 2:14pm 3:18pm 3:27pm 4:15pm
或使用reset_index
。