python数据处理篇-数据组合
代码和结果
#主要用append,concat,join,merge函数
import pandas as pd
df1 = pd.read_csv('D:/python_learning/python_pandas_book/pandas_for_everyone-master/data/concat_1.csv')
df2 = pd.read_csv('D:/python_learning/python_pandas_book/pandas_for_everyone-master/data/concat_2.csv')
df3 = pd.read_csv('D:/python_learning/python_pandas_book/pandas_for_everyone-master/data/concat_3.csv')
df1
df2
A B C D
0 a4 b4 c4 d4
1 a5 b5 c5 d5
2 a6 b6 c6 d6
3 a7 b7 c7 d7
row_concat = pd.concat([df1,df2,df3])#按行拼接数据,发现只是简单的拼接,
print(row_concat)
A B C D
0 a0 b0 c0 d0
1 a1 b1 c1 d1
2 a2 b2 c2 d2
3 a3 b3 c3 d3
0 a4 b4 c4 d4
1 a5 b5 c5 d5
2 a6 b6 c6 d6
3 a7 b7 c7 d7
0 a8 b8 c8 d8
1 a9 b9 c9 d9
2 a10 b10 c10 d10
3 a11 b11 c11 d11
new_row_series = pd.Series(['n1','n2','n3','n4'])
print(new_row_series)#发现是一个列
row_concat_new = pd.concat([row_concat,new_row_series])#这里一定要加[]
print(row_concat_new)#直接这样做的话发现会被作为一列新的列加到原来的数据框里面
A B C D 0
0 a0 b0 c0 d0 NaN
1 a1 b1 c1 d1 NaN
2 a2 b2 c2 d2 NaN
3 a3 b3 c3 d3 NaN
0 a4 b4 c4 d4 NaN
1 a5 b5 c5 d5 NaN
2 a6 b6 c6 d6 NaN
3 a7 b7 c7 d7 NaN
0 a8 b8 c8 d8 NaN
1 a9 b9 c9 d9 NaN
2 a10 b10 c10 d10 NaN
3 a11 b11 c11 d11 NaN
0 NaN NaN NaN NaN n1
1 NaN NaN NaN NaN n2
2 NaN NaN NaN NaN n3
3 NaN NaN NaN NaN n4
#那怎样才能作为行加到原来的数据框呢?我们尝试将它转为数据框,数据框的生成
new_row_df = pd.DataFrame([['n1','n2','n3','n4']],columns=['A','B','C','D'])#前面为何加两个[]
print(new_row_df)
row_concat_df = pd.concat([row_concat,