Pandas dataframe如何合并相同Col1对应的col2值为逗号分隔字符串
该需求完全可以实现,根据你使用的技术栈不同,常用实现方案如下:
Python Pandas 实现
你可以通过groupby配合聚合函数实现,示例代码如下:
import pandas as pd # 构造示例DataFrame,你可以替换为自己的DataFrame A A = pd.DataFrame({ 'Col1': ['a', 'b', 'a'], 'col2': [1, 1, 2] }) # 核心逻辑:按Col1分组,将同组的col2值转为字符串后用逗号+空格拼接 result = A.groupby('Col1', as_index=False)['col2'].agg( lambda x: ', '.join(x.astype(str)) )
如果你使用的是Pandas 1.3及以上版本,也可以用str.cat方法实现,性能更优:
result = A.groupby('Col1', as_index=False)['col2'].agg( lambda x: x.astype(str).str.cat(sep=', ') )
R 语言实现
如果你使用R语言处理,可以通过dplyr包的分组聚合实现,示例代码如下:
library(dplyr) # 构造示例数据框,你可以替换为自己的DataFrame A A <- data.frame( Col1 = c("a", "b", "a"), col2 = c(1, 1, 2) ) # 核心逻辑 result <- A %>% group_by(Col1) %>% summarise(col2 = paste(col2, collapse = ", ")) %>% ungroup()
内容的提问来源于stack exchange,提问作者Rcoder98723
相关产品推荐
相关产品推荐

