我想从另一个表(熊猫、jupyter notebook、python)覆盖我表的两列

Posted

技术标签:

【中文标题】我想从另一个表(熊猫、jupyter notebook、python)覆盖我表的两列【英文标题】:I would like to overwrite two columns of my table from another table (pandas, jupyter notebook, python) 【发布时间】:2021-12-05 16:24:57 【问题描述】:

我有一个主表,例如:

enter image description here

约翰拥有 4 股苹果股票,凯蒂拥有 10 股特斯拉股票,艾玛拥有 50 股三星股票。 但是每天,股票价格都在变化,我想每天更新一次。

格式为:

enter image description here

我想将这特定的两行覆盖到主表中,使其看起来像:

enter image description here

我尝试使用“合并”功能/“连接”功能,但总是有重复。有人知道更好的方法吗?谢谢你:)

【问题讨论】:

请提供您的实际代码 请提供足够的代码,以便其他人更好地理解或重现问题。 【参考方案1】:

这可以解决您的问题,

import pandas as pd

df1 = 'name': ['John','Katie','Emma'],
    'Stock name': ['Apple', 'Tesla','Samsung'], 
   'Price': [160,800,70],
  'country': ['US','US','KOR'],
  'No. Stock': ['4','10','50'],

df1 = pd.DataFrame(df1)



 data_2 =  'Stock name': ['Apple', 'Tesla','Samsung'], 
   'Price': [150,900,110]
                

 df2 = pd.DataFrame(data_2)

 df1['Price'] = df2['Price'].values

所以最终数据应该是这样的,

name    Stock name  Price   country  No. Stock
John    Apple        150    US           4
Katie   Tesla        900    US          10
Emma    Samsung      110    KOR         50

【讨论】:

感谢您的评论!这就是我想要的!只是好奇,如果 data_2 是 data_2 = 'Stock name': [''Tesla, 'Apple','Samsung'], 'Price': [900,150,110] 这意味着特斯拉和苹果的顺序不同,这仍然有效吗?或者它只被认为是[150,900,100]?谢谢!!! 如果我要连接apple 150 / tesla 900 / samsung 110,用字典比较好?因为据我所知,合并或连接不起作用。谢谢 相同的方法不适用于字典,因为顺序发生了变化。正如你所说,如果你想连接它们,应该使用字典。祝你的代码好运

以上是关于我想从另一个表(熊猫、jupyter notebook、python)覆盖我表的两列的主要内容,如果未能解决你的问题,请参考以下文章

从另一个笔记本运行 Jupyter 笔记本

从另一个表创建视图

使用案例表达式从另一个表更新表

我想从另一个 python 文件中导入一个变量(Django)

带有熊猫和 Jupyter 笔记本的交互式箱线图

我想从另一个反应原生的一个类中更改一个静态数组