conversion et pyspark Type de données

 

étincelle ce type de données  https://spark.apache.org/docs/latest/sql-reference.html

 

Spark Types de données

Types de données

SQL Spark et DataFrames prennent en charge les types de données suivants:

  • Les types numériques
    • ByteType: Représente 1 octet entier signé de nombres. Est de la gamme des nombres  -128 à  127.
    • ShortType: Représente deux octets entier signé de nombres. Est de la gamme des nombres  -32768 à  32767.
    • IntegerType: Représente 4-octet entier signé de nombres. Est de la gamme des nombres  -2147483648 à  2147483647.
    • LongType: Représente 8 octets entier signé de nombres. Est de la gamme des nombres  -9223372036854775808 à  9223372036854775807.
    • FloatType: Représente simple précision de 4 octets nombres à virgule flottante.
    • DoubleType: Représente double précision 8 octets nombres à virgule flottante.
    • DecimalType: Représente-précision arbitraire signé nombres décimaux. Soutenue en interne par  java.math.BigDecimal. A  est BigDecimal constitué d'une précision arbitraire entier valeur non ajustée et une échelle de nombre entier de 32 bits.
  • type string
    • StringType: Représente les valeurs de chaîne de caractères.
  • type binaire
    • BinaryType: représente des valeurs de séquence octet.
  • booléen
    • BooleanType: Représente les valeurs booléennes.
  • datetime Type
    • TimestampType: Représente les valeurs comprenant des valeurs de champs année, mois, jour, heure, minute et seconde.
    • DateType: Représente les valeurs comprenant des valeurs de champs année, mois, jour.
  • Les types complexes
    • ArrayType(elementType, containsNull): Représente les valeurs comprenant une séquence d'éléments avec le type de  elementTypecontainsNull est utilisé pour indiquer si les éléments d'une  ArrayType valeur peuvent avoir  des null valeurs.
    • MapType(keyType, valueType, valueContainsNull): Représente des valeurs comprenant un ensemble de paires de valeurs de clé. Le type de données de clés sont décrites par  keyType et le type de valeurs de données sont décrites par  valueType. Pour une  MapType valeur, les clés ne sont pas autorisés à avoir  des null valeurs. valueContainsNull est utilisé pour indiquer si les valeurs d'une  MapType valeur peuvent avoir  des null valeurs.
    • StructType(fields): Représente les valeurs avec la structure décrite par une séquence de  StructFields ( fields).
      • StructField(name, dataType, nullable): Représente un champ dans un  StructType. Le nom d'un champ est indiqué par  name. Le type de données d'un champ est indiqué par  dataTypenullable est utilisé pour indiquer si les valeurs de ces champs peuvent avoir  des null valeurs.

Correspondant au type de données ici pyspark pyspark.sql.types

 

Certains scénarios de conversion commun:

1. Convertis une date / horodatage / chaîne à une valeur de chaîne, la chaîne est convertie dans le format spécifié par le second argument

df.withColumn ( ' essai ' , F.date_format (col ( ' Last_Update ' ), " aaaa / MM / dd " )). show ()

 

 

 

2. se transformer en une chaîne, peut être jeté dans le type que vous voulez, comme suivant le type de date

df = df.withColumn ( ' Date ' , F.date_format (col ( ' Last_Update ' ), " aaaa-MM-dd " ) .alias ( ' ts ' ) .cast ( " la date " ))

 

 

 

 

3. Le nombre d'horodatage secondes (depuis le début de 1970) se transformer en une chaîne de format de date

 

4. unix_timestamp Chaîne à horodater les secondes date, l'opération est l'opération inverse de ce qui précède

  

 

   Parce que unix_timestamp pas considérer ms, ms doivent prendre en compte si vous pouvez utiliser la méthode suivante

DF1 = df.withColumn ( " unix_timestamp " , F.unix_timestamp (df.TIME, ' dd-MMM-aaaa hh: mm: ss.sss z ' ) + F.substring (df.TIME, -7,3) .cast ( ' float ' ) / 1000)

 

 

5. secondes d'horodatage converti de type horodatage, peut être utilisé F.to_timestamp

  

 

 

 

 

Ref:

https://stackoverflow.com/questions/54337991/pyspark-from-unixtime-unix-timestamp-does-not-convert-to-timestamp

Je suppose que tu aimes

Origine www.cnblogs.com/mashuai-191/p/12580628.html
conseillé
Classement