如何将数据从数据帧复制到另一个数据帧
How do you copy data from a dataframe to another
我很难从参考 csv 文件获取正确的数据到我正在处理的文件中。
我有一个包含超过 600 万行和 19 列的 csv 文件。我看起来像这样:
enter image description here
每一行都有汽车的品牌和型号等信息。
我想在这个文件中添加每 100 公里的油耗和使用的燃料类型。
我有另一个 csv 文件,其中包含每种车型的油耗,看起来像这样:enter image description here
我最终要做的是将第二个文件中的G、H、I和J列的匹配值添加到第一个文件中。
由于文件的大小,我想知道除了使用“for”或“while”循环之外是否还有其他方法可以做到这一点?
编辑 :
例如...
第一个 df 看起来像这样
ID
Brand
Model
Other_columns
Fuel_consu_1
Fuel_consu_2
1
Toyota
Rav4
a
NaN
NaN
2
Honda
Civic
b
NaN
NaN
3
GMC
Sierra
c
NaN
NaN
4
Toyota
Rav4
d
NaN
NaN
第二个 df 应该是这样的
ID
Brand
Model
Fuel_consu_1
Fuel_consu_2
1
Toyota
Corrola
100
120
2
Toyota
Rav4
80
84
3
GMC
Sierra
91
105
4
Honda
Civic
112
125
输出应该是:
ID
Brand
Model
Other_columns
Fuel_consu_1
Fuel_consu_2
1
Toyota
Rav4
a
80
84
2
Honda
Civic
b
112
125
3
GMC
Sierra
c
91
105
4
Toyota
Rav4
d
80
84
第一个df可能有很多次相同的品牌和型号不同的ID。顺序完全随机
感谢您提供更新,我整理了一些应该可以帮助您的东西
#You drop these two columns because you won't need them once you join them to df1 (which is your 2nd table provided)
df.drop(['Fuel_consu_1', 'Fuel_consu_2'], axis = 1 , inplace = True)
#This will join your first and second column to each other on the Brand and Model columns
df_merge = pd.merge(df, df1, on=['Brand', 'Model'])
我很难从参考 csv 文件获取正确的数据到我正在处理的文件中。
我有一个包含超过 600 万行和 19 列的 csv 文件。我看起来像这样: enter image description here
每一行都有汽车的品牌和型号等信息。 我想在这个文件中添加每 100 公里的油耗和使用的燃料类型。
我有另一个 csv 文件,其中包含每种车型的油耗,看起来像这样:enter image description here
我最终要做的是将第二个文件中的G、H、I和J列的匹配值添加到第一个文件中。
由于文件的大小,我想知道除了使用“for”或“while”循环之外是否还有其他方法可以做到这一点?
编辑 :
例如... 第一个 df 看起来像这样
ID | Brand | Model | Other_columns | Fuel_consu_1 | Fuel_consu_2 |
---|---|---|---|---|---|
1 | Toyota | Rav4 | a | NaN | NaN |
2 | Honda | Civic | b | NaN | NaN |
3 | GMC | Sierra | c | NaN | NaN |
4 | Toyota | Rav4 | d | NaN | NaN |
第二个 df 应该是这样的
ID | Brand | Model | Fuel_consu_1 | Fuel_consu_2 |
---|---|---|---|---|
1 | Toyota | Corrola | 100 | 120 |
2 | Toyota | Rav4 | 80 | 84 |
3 | GMC | Sierra | 91 | 105 |
4 | Honda | Civic | 112 | 125 |
输出应该是:
ID | Brand | Model | Other_columns | Fuel_consu_1 | Fuel_consu_2 |
---|---|---|---|---|---|
1 | Toyota | Rav4 | a | 80 | 84 |
2 | Honda | Civic | b | 112 | 125 |
3 | GMC | Sierra | c | 91 | 105 |
4 | Toyota | Rav4 | d | 80 | 84 |
第一个df可能有很多次相同的品牌和型号不同的ID。顺序完全随机
感谢您提供更新,我整理了一些应该可以帮助您的东西
#You drop these two columns because you won't need them once you join them to df1 (which is your 2nd table provided)
df.drop(['Fuel_consu_1', 'Fuel_consu_2'], axis = 1 , inplace = True)
#This will join your first and second column to each other on the Brand and Model columns
df_merge = pd.merge(df, df1, on=['Brand', 'Model'])