将一系列的值加到datafram中

2024-04-26 21:32:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将一系列的值添加到数据帧中。我不想把列添加到数据帧的末尾,也就是说,在数据帧中创建一个额外的列。在

我有一个序列,它的长度与数据帧中的列长度相同。我想将序列中的值添加到框架中的每一列。 我试过Dataframe.add(),但没用。在

代码: 数据帧(命名读取器):

     Current track blade 1   Current track blade 2   
0                -8.577881               -0.333252  
1                -6.284912                5.294434    
2                 6.269775               11.229490     
3                 5.253418               10.187260     
4               -16.088380               -2.967773  

要添加到每列的序列(名为abs_track):

^{2}$

reader=reader+abs_track和{}给出:

     Current abs track   Current track blade 1   Current track blade 2    


0                  NaN                     NaN                     NaN                     
1                  NaN                     NaN                     NaN 
2                  NaN                     NaN                     NaN   
3                  NaN                     NaN                     NaN   
4                  NaN                     NaN                     NaN   

有什么想法吗。在


Tags: 数据代码框架adddataframe读取器序列track
2条回答

您可以使用apply函数:

>>> df1 = pd.DataFrame({"Current track blade 1":[-8.577881, -6.284912, 6.269775, 5.253418, -16.088380], "Current track blade 2": [-0.333252, 5.294434, 11.229490,10.187260,-2.967773]})
>>> s1 = pd.Series([3503.125, 3517.333, 3504.778, 3476.127, 3477.776])
>>> df1.apply(lambda x: x + s1)
   Current track blade 1  Current track blade 2
0            3494.547119            3502.791748
1            3511.048088            3522.627434
2            3511.047775            3516.007490
3            3481.380418            3486.314260
4            3461.687620            3474.808227

您需要传递参数^{}来实现您想要的:

df = pd.DataFrame({"Current track blade 1":[-8.577881, -6.284912, 6.269775, 5.253418, -16.088380], "Current track blade 2": [-0.333252, 5.294434, 11.229490,10.187260,-2.967773]})
s = pd.Series([3503.125, 3517.333, 3504.778, 3476.127, 3477.776])

df.add(s, axis=0)

Out[58]:
   Current track blade 1  Current track blade 2
0            3494.547119            3502.791748
1            3511.048088            3522.627434
2            3511.047775            3516.007490
3            3481.380418            3486.314260
4            3461.687620            3474.808227

这将添加列方式,而不是默认的行方式。在

相关问题 更多 >