Почему мой фрейм данных Pandas неправильно преобразуется в столбцы и строки в фрейм данных Pyspark? - PullRequest
0 голосов
/ 10 июля 2019

Я пытаюсь прочитать данные с сервера sql и затем создаю фрейм данных pyspark.

Я также пытался создать для него определенную схему, но это тоже не помогает

from pyspark.sql.types import *

mySchema = StructType([ StructField("CAMP_ID", StringType(), True)\
                       ,StructField("SEG_ID", StringType(), True)\
                       ,StructField("CUST_NAME", StringType(), True)\
                       ,StructField("CUST_CNIC", StringType(), True)\
                       ,StructField("CUST_GENDER", StringType(), True)\
                       ,StructField("CUST_DOB", StringType(), True)\
                       ,StructField("CUST_MOBILE", StringType(), True)\
                       ,StructField("CUST_EMAIL", StringType(), True)\
                       ,StructField("PAN", StringType(), True)\
                       ,StructField("TRAN_DATE", StringType(), True)\
                       ,StructField("TRAN_CURRENCY", StringType(), True)\
                       ,StructField("TRAN_AMOUNT", FloatType(), True)\
                       ,StructField("STAN", StringType(), True)\
                       ,StructField("MERCHANT_CAT_CODE", StringType(), True)\
                       ,StructField("MERCHANT_NAME", StringType(), True)\
                       ,StructField("MERCHANT_TYPE", StringType(), True)\
                       ,StructField("TRAN_LOCATION", StringType(), True)\
                       ,StructField("RESPONSE_NAME", StringType(), True)\
                       ,StructField("CHANNEL_NAME", StringType(), True)\
                       ,StructField("NETWORK_NAME", StringType(), True)\
                       ,StructField("ACCT_STATUS_NAME", StringType(), True)\
                       ,StructField("ACCT_TYPE_NAME", StringType(), True)\
                       ,StructField("card_status", StringType(), True)\
                       ,StructField("product_code", StringType(), True)])

df = spark.createDataFrame(pdf,schema=mySchema)

This is the dataframe I have

this is the result that am getting

1 Ответ

0 голосов
/ 11 июля 2019

Это ожидаемое поведение. Если вы хотите распечатать его, попробуйте:

display(df)

Если вы хотите только первые две строки, вы можете попробовать что-то вроде

df.take(2)

Но это не будет довольно напечатано.

...