1
可以說給予了數據幀更新在pyspark取決於列電流值的列
+-----+-----+-----+
| x| y| z|
+-----|-----+-----+
| 3| 5| 9|
| 2| 4| 6|
+-----+-----+-----+
我想用價值y
列乘以所有的值在z
列,其中z
列等於6
This後顯示我的目標的解決方案,使用的代碼
from pyspark.sql import functions as F
df = df.withColumn('z',
F.when(df['z']==6, df['z']*df['y']).
otherwise(df['z']))
ŧ他的問題是,df['z']
和df['y']
被識別爲Column對象,並且鑄造它們將不起作用...
如何正確地做到這一點?
如果你需要這個號碼,你會在scala中做什麼?可以說我想複製一些列表[df ['z']] index – bluesummers
試試這個'df = df.withColumn('new_col',F.when(df.z == 6,(df.z * df .y))。否則(df.z))' – mrsrinivas
不工作:/ – bluesummers