Python / Pandas合并并从逗号分隔的变量/列生成唯一值列表[重复]
Posted
技术标签:
【中文标题】Python / Pandas合并并从逗号分隔的变量/列生成唯一值列表[重复]【英文标题】:Python/Pandas merge and generate list of unique values from comma separated variable/column [duplicate] 【发布时间】:2020-06-16 06:16:09 【问题描述】:我有一张如下所示的表格: TABLE
LOCATION ANALYSIS TYPE
A A,B,C,D
A D,E,F
B KA
B A,B,C
B C,D,E
我希望为每个位置生成一个单行库存,其中列出了使用pandas
可用的分析类型。因此,对于这一列列表,我想按位置合并并显示一个唯一值列表。
IE:
A A,B,C,D,E,F
B A,B,C,D,E,KA
DESIRED TABLE_OUT
抱歉,没有代码。我在 pandas 中尝试过各种分裂,但没有接近。
【问题讨论】:
您能发布一些您在 pandas 中尝试过的拆分吗? 在列表中的“,”上进行了拆分。它为每个项目创建了一个新列……与我想要完成的目标相去甚远。 :D 你不应该用图片编辑你的问题。将表格保留为文本。 当...“我在帮忙” 文本回来了...我需要在这里整理一下如何格式化表格。这是我的第一篇文章...请不要恨我:D 【参考方案1】:试试这个:
df1 = pd.DataFrame('Location':['A']*2+['B']*3
,'Analysis_Type':['A,B,C,D','D,E,F','KA','A,B,C','C,D,E'])
df1.set_index('Location')['Analysis_Type'].str.split(',')\
.groupby(level=0)\
.agg(lambda x: ','.join(sorted(list(set(x.sum())))))\
.reset_index()
输出:
Location Analysis_Type
0 A A,B,C,D,E,F
1 B A,B,C,D,E,KA
【讨论】:
df_newrng.set_index('UWI')['分析测试类型'].str.split(',')\ .groupby(level=0)\ .agg(lambda x: ',' .join(sorted(list(set(x.sum())))))\ .reset_index() 我收到类型错误。很抱歉弄清楚如何换行:D "\" 是一个续行符.... 谢谢,这正是我想要的……使用示例数据。对于现实世界的数据,我遇到了语法问题......但它会到达那里。 Hi-5 斯科特波士顿以上是关于Python / Pandas合并并从逗号分隔的变量/列生成唯一值列表[重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Python Pandas 中使用逗号作为小数分隔符的浮点格式?
将整列整数转换为字符串,在 Pandas 中使用逗号分隔千位
Python中将pandas的dataframe拷贝到剪切板并保持格式实战:to_clipboard()函数复制到Excel文件复制到文本文件(默认是tsv格式)复制到文本文件(设置逗号分隔符)