使用熊猫连接两个数据框时出错

时间:2019-09-19 13:23:07

标签: python pandas concatenation

使用一些代码,我计算出一些数字。我将这些数字存储在一个熊猫数据框中,即data_nn。我在for循环中生成了许多此类data_nn。

虽然循环希望将data_nn与数据帧即data_all连接起来。最后,我将data_all导出到一个csv文件。但是串联失败。

在我的代码下面。它给出了一个错误:'无法连接类型为“”的对象;仅pd.Series,pd.DataFrame和pd.Panel(已弃用)objs有效'

如何解决这个问题?

import pandas as pd
import numpy as np

dat_nn={'File_name': 'AL902787D19_85_AC10_N0.09x0.07_Vcycle=1.5_Ncycle=0_vreset=0_1e-07s_Vg_max=2.5_Frd_swp_t=0.0003125_Rev_swp_t=0.0003125_T=25_It.txt',
 'Wafer': 'D19',
 'Dev_width': 0.09,
 'Dev_length': 0.07,
 'VCycle': 1.5,
 'NCycle': 0.0,
 'Vreset': 0.0,
 'Vg_max': 2.5,
 'Sweep t': 0.0003125,
 'Vt_up': 1.3732296825853794,
 'Vt_down': 1.416156137450131,
 'Hysteresis': -0.04292645486475166}

data_all = pd.DataFrame(data={'File_name':np.nan,'Wafer':np.nan,'Dev_width':np.nan,'Dev_length':np.nan,'VCycle':np.nan,'NCycle':np.nan,'Vreset':np.nan,'Vg_max':np.nan,'Sweep t':np.nan,'Vt_up':np.nan,'Vt_down':np.nan, 'Hysteresis':np.nan},index=[0])
data_nn=pd.DataFrame(data=dat_nn,index=[0])
data_all=pd.concat([data_all,dat_nn],axis=1)

2 个答案:

答案 0 :(得分:2)

最后一行似乎有错字:

data_all=pd.concat([data_all,dat_nn],axis=1)

应该是

data_all=pd.concat([data_all,data_nn],axis=1)

我运行了它,对我有用。

答案 1 :(得分:1)

您要在pd.concat中传递原始词典dat_nn,而不是data_nn

将其更改为:

data_all=pd.concat([data_all,data_nn],axis=1)

我建议使用更多唯一的变量名,例如data_nn_dictionary和data_nn_dataframe。