Dataframe 如何基于另一个数据帧更改数据帧的元素?

Dataframe 如何基于另一个数据帧更改数据帧的元素?,dataframe,pyspark,bigdata,Dataframe,Pyspark,Bigdata,我有一个大数据df。我还有另一个csv文件dg。dg数据帧由以下代码从df生成: dg=df.groupBy('title).count().orderBy('count') 我在dg上附加了一个新的列,称为new。如果df中的title等于dg中的title,我想创建一个新列并遍历df的所有行。例如,假设: title summer apple hi hi apple title new summer AH apple now hi good 输出:

我有一个大数据
df
。我还有另一个csv文件
dg
dg
数据帧由以下代码从
df
生成:

dg=df.groupBy('title).count().orderBy('count')
我在
dg
上附加了一个新的列,称为
new
。如果df中的
title
等于
dg中的
title
,我想创建一个新列并遍历
df
的所有行。例如,假设:

title  
summer
apple
hi
hi
apple


title    new
summer   AH
apple    now
hi       good
输出:

 title  new 
summer  AH
apple   now
hi      good
hi      good
apple   now

左连接应该可以

df.join(dg, ['title'], "left").show()

+------+----+
| title| new|
+------+----+
|summer|  AH|
| apple| now|
|    hi|good|
|    hi|good|
| apple| now|
+------+----+

不完全确定您想要实现什么,并且您所包含的示例也不清楚(例如,您写道您的
dg
中有计数,但没有一个示例包含数字),但您是否正在寻找
pandas.merge()
?您可以在其中指定一个
内部
连接。还是您的大数据太大,无法使用
pandas
?它有数百万行,太大了它不是pandas数据框架这是pyspark代码。不是熊猫。它重复了许多事情使用
distinct()
删除重复项:
df.join(dg,['title'],“left”).distinct().show()
。上述解决方案适用于您发布的内容。如果你仍然有问题,请用清晰的例子更新问题。