python:将字典写入pandas.DataFrame行

Mar*_*hke 2 python dictionary dataframe pandas

我正在寻找一种将字典写入 Pandas DataFrame 行的单行解决方案。另一种方式非常直观地使用类似的表达式df.loc[2, :].to_dict(dct).

插图

我正在寻找一个镜头表达式来替换for key in dct.keys()以下代码中的-loop:

>>> import numpy as np
>>> import pandas as pd
>>> df = pd.DataFrame(np.arange(12).reshape(3,4), columns=list('abcd'))
>>> dct = {'a': 77, 'c':-1}
>>> 
>>> df
   a  b   c   d
0  0  1   2   3
1  4  5   6   7
2  8  9  10  11
>>> dct
{'a': 77, 'c': -1}
>>> 
>>> for key in dct.keys():
...     df.loc[1, key] = dct[key]
... 
>>> 
>>> df
    a  b   c   d
0   0  1   2   3
1  77  5  -1   7
2   8  9  10  11
Run Code Online (Sandbox Code Playgroud)

Shu*_*rma 6

您可以使用:

df.loc[1, dct.keys()] = dct.values()
Run Code Online (Sandbox Code Playgroud)

结果:

print(df)
    a  b   c   d
0   0  1   2   3
1  77  5  -1   7
2   8  9  10  11
Run Code Online (Sandbox Code Playgroud)