Błąd typu: obiekt "Ramka danych" nie obsługuje przypisywanie elementów przy użyciu podziału

0

Pytanie

Błąd typu: obiekt "Ramka danych" nie obsługuje przypisywanie elementów przy użyciu separatora.

Podział dwóch całych kolumn w ramce danych pyspark i uzyskanie tego błędu. Jakieś pomysły?

enter image description here

Odtwarzany:

simpleData = (((1, 2), (2, 6), (3, 6))
columns= ["sales","users"]
df = spark.createDataFrame(data = simpleData, schema = columns)
df = df.withColumn("users", df["users"].cast(IntegerType()))
df = df.withColumn("sales", df["sales"].cast(IntegerType()))
df['buy_rate'] = df['sales']/ df['users']
databricks division pyspark
2021-11-23 19:30:39
1

Najlepsza odpowiedź

1

wystarczy mały trik .

from pyspark.sql.types import IntegerType
import pyspark.sql.functions as F
simpleData=((1, 2), (2, 6), (3, 6))
columns= ["sales","users"]
df = spark.createDataFrame(data = simpleData, schema = columns)
df = df.withColumn("users", df["users"].cast(IntegerType()))
df = df.withColumn("sales", df["sales"].cast(IntegerType()))

df1 = df\
    .withColumn("buy_rate", (F.col("sales") / F.col("users")))
display(df1)

enter image description here

2021-11-23 20:01:03

Dzięki Malownicze i bardzo dobre podejście z powołaniem nowej kolumny w withColumn() to świetnie zadziałało.
Greg

pozdrawiam, Greg !!
Karthikeyan Rasipalay Durairaj

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................