Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将具有列名的dataframe单独附加到另一个具有数据的dataframe_Python_Pandas_Dataframe - Fatal编程技术网

Python 将具有列名的dataframe单独附加到另一个具有数据的dataframe

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

我有如下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   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个问题:)