Python 将多行合并为单行-合并

Python 将多行合并为单行-合并,python,pandas,Python,Pandas,我有一个dataframe,它包含8行dict值。我想用逗号将所有行合并成一行。因为我的数据帧包含dict值,所以我得到了一个错误。可以将dict值合并到一行吗 我有一个如下所示的数据帧 names names1 0 {'name':'Ashwin'} {'name':'prem'} 1 {'name':'Alex'} {'name':'Naga'} 我希望它是,

我有一个dataframe,它包含8行dict值。我想用逗号将所有行合并成一行。因为我的数据帧包含dict值,所以我得到了一个错误。可以将dict值合并到一行吗

我有一个如下所示的数据帧

         names                              names1
0        {'name':'Ashwin'}       {'name':'prem'}
1        {'name':'Alex'}         {'name':'Naga'}
我希望它是, 名字 0{'name':'Ashwin'},{'name':'Alex'}{'name':'prem'},{'name':'Naga'}

请注意:数据类型不应更改为dict


提前感谢

将列转换为列表并调用
数据帧
构造函数:

df = pd.DataFrame({'names': [df['names'].tolist()]})
print (df)
                                               names
0  [{'name': 'Ashwin', 'age': '26'}, {'name': 'Al...
如果值是字符串并且需要字典列表:

import ast

df = pd.DataFrame({'names': [df['names'].apply(ast.literal_eval).tolist()]})
print (df)
                                               names
0  [{'name': 'Ashwin', 'age': '26'}, {'name': 'Al...
您可以尝试:

df_new=df.apply(','.join).reset_index(drop=True).rename('name')

假设您只需要一个字符串值,则可以使用
'.join()
作为聚合函数:

pd.DataFrame(df.agg(lambda x: ','.join(x.astype(str)))).T
它给出:

                                               names
0  {'name': 'Ashwin', 'age': '26'},{'name': 'Alex...

names
column
str
还是
dict
valued@QuangHoang-列类型为str