【发布时间】:2017-10-09 13:59:13
【问题描述】:
用一个例子解释我的问题..
table_name
col1 col2 col3
1 aaa xxx
1 bba yyy
2 ccc yyy
我希望我的最终输出是这样的:
table_name
col1 col2 col3
1 aab xxx
1 bbc yyy
2 cc yyy
我有一个包含 3 列的表(没有主键),我必须更改这 3 列中第二列中的数据,现在我想用这个新的第二列替换旧列。
df1 = hc.sql("select col1 from table_name")
df2 = hc.sql("select col2 from table_name")
df3 = hc.sql("select col3 from table_name")
有什么方法可以做到这一点?
由于没有主键,我觉得这是一种方式:
我可以为数据帧添加行号(行号将是数据帧的新列),并且可以加入行号上的所有数据帧。 - 这里的问题是,当我“从 table_name 中选择 col1”和“从 table_name 中选择 col2”时,不能保证在第一个和第二个查询中我将以相同的顺序获取行..(如果我错了)
为了简单起见,我只想在 pyspark 中执行以下操作:
table1
col_1
a
b
c
table2
col_2
d
e
f
into---
table_1_2
col1 col2
a d
b e
c f
【问题讨论】:
标签: apache-spark dataframe pyspark