1. 程式人生 > >使用concat合併兩個dataframe報錯

使用concat合併兩個dataframe報錯

使用concat合併兩個dataframe報錯

TypeError: cannot concatenate object of type "<class 'str'>"; only pd.Series, pd.DataFrame, and pd.Panel (deprecated) objs are valid

顯示說不能合併字串型別的物件,我的兩個df如下(都是顯示前五行)

# df1
    latitude  longitude  status  grid_id
0       7497       3972       1     4120
6       7505
4208 1 4123 13 7717 4183 1 4302 17 7718 4183 1 4302 37 7524 4184 1 4182 # df2 latitude longitude status grid_id 5 7555 4143 2 4182 12 7517 4309 2 4124 16 7718 4182
2 4302 36 6176 3873 2 3159 54 7916 4124 2 4422

檢視一下各列的型別

# print(df1.dtypes)
latitude     int32
longitude    int32
status        int8
grid_id      int64
dtype: object
# print(df2.dtypes)
latitude     int16
longitude    int16
status        int8
grid_id      int64
dtype:
object

型別沒有錯啊,百思不得其解,然後仔細看了下自己寫的程式碼

cab_df = pd.concat(['df1', 'df2'], ignore_index=True)

我擦,竟然將兩個df用逗號括起來了,不出錯才怪呢!

引以為戒,一定要注意細節!