熊猫按条件将数据框添加到另一个数据框中

2024-09-29 01:26:51 发布

您现在位置:Python中文网/ 问答频道 /正文

from pandas import DataFrame
import pandas as pd

df_1 = pd.DataFrame(
    {
        'Horses':["Horse1","Horse2","Horse3"],
        'Age':[2,5,3],
        'Price':["$100,000","$80,000","$60,000"],
        'Weight':["180g","140kg","240kg"]})  

df_2 = pd.DataFrame(
    {
        'Horses':["Horse4","Horse1","Horse5"],
        'Age':[4,3,2],
        'Price':["$75,000","$35,000","$120,000"],
        'Weight':["210kg","110kg","197kg"]})  



df_final = pd.DataFrame(
    {
        'Horses':["Horse1","Horse2","Horse3","Horse4","Horse5"],
        'Age':[2,5,3,4,2],
        'Price':["$100,000","$80,000","$60,000","$75,000","$120,000"],
        'Weight':["180g","140kg","240kg","210kg","197kg"]})
  • 如何从前两个数据帧bf_1和bf_2创建df_final数据帧

  • 如何对这种情况进行编码: 如果输入“Horse1”,它会像上面一样被删除,否则会添加到底部


Tags: importdataframepandasdfagepricefinalpd
1条回答
网友
1楼 · 发布于 2024-09-29 01:26:51

使用combine_first

df_1.set_index('Horses',inplace=True)
df_1=df_1.combine_first(df_2.set_index('Horses')).reset_index()
df_1
   Horses  Age     Price Weight
0  Horse1  2.0  $100,000   180g
1  Horse2  5.0   $80,000  140kg
2  Horse3  3.0   $60,000  240kg
3  Horse4  4.0   $75,000  210kg
4  Horse5  2.0  $120,000  197kg

相关问题 更多 >