Closed. This question needs details or clarity。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
                        
                        6个月前关闭。
                                                                                            
                
        
尝试根据要求对数据框中的元素进行排序。我从excel导入数据,并使用python / pandas进行分析。

这是我收集的数据,每个数据对应于索引1-4

 d   = {
        1:['0E', '1A', '1D', '2A']

        2:[ '0E', '1A', '1D', '1E', '2A']

        3:[ '0E', '1A', '1D', '1E', '2A', '3B']

        4:['1D', '1E']
       }


我希望显示如下:

[1D] index 1;2;3;4

[0E;1A;1D] index 1;2;3

[1E] index 2;3;4


我怎样才能做到这一点?我尝试为数据框中的每个i进行循环,但可以解决此问题
谢谢!

最佳答案

试试这个


import pandas as pd

data={1: ['0E', '1A', '1D', '2A'], 2: ['0E', '1A', '1D', '1E', '2A'], 3: ['0E', '1A', '1D', '1E', '2A', '3B'], 4: ['1D', '1E']}

data_mod = [[el, k] for k,v in data.items() for el in v]

df = pd.DataFrame(data=data_mod, columns=["el", "key"]) #el -> alphanumeric key, key -> [1,2,3,4], as per original dict keys

df_2 = df.groupby("el", as_index=False).agg(lambda x: ";".join([str(el) for el in list(set(x))])).groupby("key").agg(lambda x: list(x)) #final product, as per your question


关于python - 如何合并数据框中的元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57654224/

10-12 17:35
查看更多