pandas - 如何将转换应用于使用其他行的每一行
问题描述
我正在尝试清理下面的数据框:
col1, clo2
A, 1
A, 2
B, 3
B, 4
我想让它看起来像这样:
col1, clo2
A, 1
A, 1
B, 3
B, 3
基本上分组col1
并将所有值col2
转换为每个组的第一个值,但我想保留所有行(它们有我不能丢失的数据)。
在R
使用中,dplyr
我会在 r 中执行以下操作以获得相同的结果:
data %>% group_by(col1) %>% mutate(col2 = first(col2))
解决方案
我们有first
和transform
( mutate
in R
) 在pandas
df.clo2=df.groupby('col1').clo2.transform('first')
df
Out[1024]:
col1 clo2
0 A 1
1 A 1
2 B 3
3 B 3
推荐阅读
- html - Node js中的主体未定义
- java - 使用来自 android 应用程序的 post req 将数据保存到 mongodb
- php - 上传到 sftp 服务器时 CSV 文件丢失内容
- javascript - Looking up a Mongo collection, keeps returning undefined
- excel - Excel VBA: For loop with Match function, OnError works if no match is found, but inserts empty row
- c++ - VSCode not recognizing includes from includepath
- maven - 如何在 pom 文件中配置 evosuite maven 插件的属性?
- javascript - Modal的异步数据使用类绑定
- reactjs - WebView 未在反应本机应用程序中显示
- c++ - 与模板实例化相关的编译错误