python - Pandas 使用其他 Dataframe 更新 Dataframe

标签 python pandas csv numpy

我正在尝试使用第二个 csv 文件中的数据修改 csv 文件。两个文件都有一个 sku 列,但它们并不完全匹配。这两个文件还有一个价格列。我需要使用 sku 匹配的第二个文件中的新价格更新第一个文件。感觉很简单,但我的大脑今天缺了一个齿轮。

到目前为止我已经:

oldDf = pandas.read_csv('oldData.csv')
newDf = pandas.read_csv('newData.csv')

oldDf = oldDf.assign(newPrice = oldDf['LIST PRICE'])
oldDf['newPrice'] = newDf['LIST PRICE']

oldDf = oldDf.assign(sku2 = oldDf['SKU'])
oldDf['sku2'] = newDf['SKU']


print(oldDf)
oldDf.to_csv('something.csv')

除了添加新列并向我显示内容没有对齐之外,它没有做任何事情。

我需要类似的东西:

if(old['sku'] = new['sku']){
    old['list price'] = new['list price']
}

(请原谅语法糟糕的伪代码)

最佳答案

合并“SKU”上的数据框。沿着这些思路的东西应该有效:

oldDf = pandas.read_csv('oldData.csv')
newDf = pandas.read_csv('newData.csv')

result = pd.merge(oldDf, newDf, on='SKU')

关于python - Pandas 使用其他 Dataframe 更新 Dataframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54312729/

相关文章:

python - Seaborn 热图在更新后抛出 "isnan"类型的错误

python - 在 Pandas 中查找日期范围时出现问题

python - 在pandas dataframe中堆叠列以实现记录格式

python - 在 Python 中绘制随机过程

120 MB CSV 文件的 String.Split() 上的 .NET System.OutOfMemoryException

python - 如何从具有值列表的字典列表中形成 DataFrame?

python - 无法打开登录请求的服务器

python - 如何使用 Python 缩放 SVG 文件中的路径元素

Python:islice 的性能问题

javascript - 从本地托管网页的坐标获取元素详细信息