Python 将具有列名的dataframe单独附加到另一个具有数据的dataframe
我有如下2个数据帧 Dataframe 1(只有列名,没有数据):Python 将具有列名的dataframe单独附加到另一个具有数据的dataframe,python,pandas,dataframe,Python,Pandas,Dataframe,我有如下2个数据帧 Dataframe 1(只有列名,没有数据): Name Age Gender level_1 level_2 level_3 AAA 26 M BBB 19 F CCC 24 F dataframe_1 = dataframe_1.append(dataframe_2,ignore_index = True) Name Age Gender level_1
Name Age Gender
level_1 level_2 level_3
AAA 26 M
BBB 19 F
CCC 24 F
dataframe_1 = dataframe_1.append(dataframe_2,ignore_index = True)
Name Age Gender level_1 level_2 level_3
NaN NaN NaN AAA 26 M
NaN NaN NaN BBB 19 F
NaN NaN NaN CCC 24 F
0行*3列
数据帧2(具有超过1000行的数据):
Name Age Gender
level_1 level_2 level_3
AAA 26 M
BBB 19 F
CCC 24 F
dataframe_1 = dataframe_1.append(dataframe_2,ignore_index = True)
Name Age Gender level_1 level_2 level_3
NaN NaN NaN AAA 26 M
NaN NaN NaN BBB 19 F
NaN NaN NaN CCC 24 F
1000行*3列
我必须附加上述两个数据帧
预期产出
数据帧1
Name Age Gender
AAA 26 M
BBB 19 F
CCC 24 F
到目前为止我所尝试的:
Name Age Gender
level_1 level_2 level_3
AAA 26 M
BBB 19 F
CCC 24 F
dataframe_1 = dataframe_1.append(dataframe_2,ignore_index = True)
Name Age Gender level_1 level_2 level_3
NaN NaN NaN AAA 26 M
NaN NaN NaN BBB 19 F
NaN NaN NaN CCC 24 F
这给了我以下输出:
Name Age Gender
level_1 level_2 level_3
AAA 26 M
BBB 19 F
CCC 24 F
dataframe_1 = dataframe_1.append(dataframe_2,ignore_index = True)
Name Age Gender level_1 level_2 level_3
NaN NaN NaN AAA 26 M
NaN NaN NaN BBB 19 F
NaN NaN NaN CCC 24 F
1000行*6列需要相同的列名,以便在两个数据帧之间正确对齐列,因此通过从另一个数据帧设置列名:
dataframe_2.columns = dataframe_1.columns
dataframe_1 = dataframe_1.append(dataframe_2,ignore_index = True)
另一个解决方案:
dataframe_1 = pd.concat([dataframe_1, dataframe_2],ignore_index = True)
需要相同的列名称才能在两个数据帧之间正确对齐列,因此请通过从另一个数据帧设置列名称:
dataframe_2.columns = dataframe_1.columns
dataframe_1 = dataframe_1.append(dataframe_2,ignore_index = True)
另一个解决方案:
dataframe_1 = pd.concat([dataframe_1, dataframe_2],ignore_index = True)
鉴于您的期望,我认为以下方面没有任何问题:
dataframe_2.columns = dataframe_1.columns
鉴于您的期望,我认为以下方面没有任何问题:
dataframe_2.columns = dataframe_1.columns
将第一个数据帧的
.columns
属性替换为第二个:
import pandas as pd
df = pd.DataFrame({
'val': ['Cat', 'Tiger', 'Ball', 'Bat'],
'id': [1, 2, 3, 1]
})
df2 = pd.DataFrame({
'waka': [],
'wattafak': []
})
df.columns = df2.columns
df
将第一个数据帧的
.columns
属性替换为第二个:
import pandas as pd
df = pd.DataFrame({
'val': ['Cat', 'Tiger', 'Ball', 'Bat'],
'id': [1, 2, 3, 1]
})
df2 = pd.DataFrame({
'waka': [],
'wattafak': []
})
df.columns = df2.columns
df
极好的非常感谢。工作如预期:)谢谢大家的快速反应response@shankarBalu-答案之间相差一分钟。:)是 啊3分钟内回答3个问题:)极好的非常感谢。工作如预期:)谢谢大家的快速反应response@shankarBalu-答案之间相差一分钟。:)是 啊3分钟内回答3个问题:)