Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将df列创建为行的json_Python_Json_Python 3.x_Pandas_Dataframe - Fatal编程技术网

Python 将df列创建为行的json

Python 将df列创建为行的json,python,json,python-3.x,pandas,dataframe,Python,Json,Python 3.x,Pandas,Dataframe,我有下面的代码,它遍历df并创建一个附加列new,其中包含其他列的dict。有没有更好的方法来实现这一点而不使用iterrows?我的实际数据集要大得多,在行中进行迭代的性能不好 代码 输出 Name Age new 0 Tom 20 {"Name": "Tom", "Age": 20} 1 Nick 21 {"Name": "Ni

我有下面的代码,它遍历df并创建一个附加列
new
,其中包含其他列的dict。有没有更好的方法来实现这一点而不使用iterrows?我的实际数据集要大得多,在行中进行迭代的性能不好

代码

输出

  Name  Age                          new
0   Tom   20   {"Name": "Tom", "Age": 20}
1  Nick   21  {"Name": "Nick", "Age": 21}
2   Jim   35   {"Name": "Jim", "Age": 35}
3  John   11  {"Name": "John", "Age": 11}

您可以使用
df.join

out = df.join(pd.Series(df.to_dict('records'),index=df.index,name='new'))

out = df.join(pd.Series(df.to_dict('records'),index=df.index,name='new'))
print(out)

   Name  Age                          new
0   Tom   20   {'Name': 'Tom', 'Age': 20}
1  Nick   21  {'Name': 'Nick', 'Age': 21}
2   Jim   35   {'Name': 'Jim', 'Age': 35}
3  John   11  {'Name': 'John', 'Age': 11}