Tipo de datos de conversión y pyspark

 

chispa qué tipo de datos  https://spark.apache.org/docs/latest/sql-reference.html

 

Spark tipos de datos

Tipos de datos

SQL chispa y tramas de datos compatibles con los siguientes tipos de datos:

  • tipos numéricos
    • ByteType: Representa 1 byte entero de números. El rango de números es de  -128 a  127.
    • ShortType: Representa 2 bytes entero de números. El rango de números es de  -32768 a  32767.
    • IntegerType: Representa 4 bytes entero de números. El rango de números es de  -2147483648 a  2147483647.
    • LongType: Representa 8 bytes entero de números. El rango de números es de  -9223372036854775808 a  9223372036854775807.
    • FloatType: Representa de 4 bytes precisión simple de números de punto flotante.
    • DoubleType: Representa el 8 bytes de doble precisión números de punto flotante.
    • DecimalType: Representa los números decimales con signo de precisión arbitraria. Con el respaldo internamente  java.math.BigDecimal. BigDecimal consiste en una precisión arbitraria número entero valor sin escala y una escala de número entero de 32 bits.
  • tipo de cadena
    • StringType: Representa los valores de cadena de caracteres.
  • tipo binario
    • BinaryType: representa byte valores de secuencia.
  • tipo booleano
    • BooleanType: Representa los valores booleanos.
  • fecha y hora tipo
    • TimestampType: Representa los valores que comprende valores de los campos año, mes, día, hora, minuto y segundo.
    • DateType: Representa los valores que comprenden valores de los campos año, mes, día.
  • Los tipos complejos
    • ArrayType(elementType, containsNull): Representa los valores que comprenden una secuencia de elementos con el tipo de  elementTypecontainsNull se usa para indicar si los elementos en un  ArrayType valor pueden tener  null valores.
    • MapType(keyType, valueType, valueContainsNull): Representa los valores que comprende un conjunto de pares de clave y valor. El tipo de datos de claves se describen por  keyType y el tipo de datos de los valores se describen por  valueType. Para un  MapType valor, llaves no se les permite tener  null valores. valueContainsNull se utiliza para indicar si los valores de un  MapType valor pueden tener  null valores.
    • StructType(fields): Valores representa con la estructura descrita por una secuencia de  StructFields ( fields).
      • StructField(name, dataType, nullable): Representa un campo de una  StructType. El nombre de un campo se indica mediante  name. El tipo de datos de un campo está indicada por  dataTypenullable se utiliza para indicar si los valores de estos campos pueden tener  null valores.

En correspondencia con el tipo de datos que aquí pyspark pyspark.sql.types

 

Algunos supuestos de conversión común:

1. Convierte una fecha / fecha y hora / cadena en un valor de cadena, la cadena se convierte en el formato especificado por el segundo argumento

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

 

 

 

2. A su vez en una cadena, se puede convertir en el tipo que desee, tal como después del tipo de fecha

df = df.withColumn ( ' fecha ' , F.date_format (col ( ' last_update ' ), " aaaa-MM-dd " .alias quiere) ( ' ts ' ) .cast ( " fecha " ))

 

 

 

 

3. El número de marca de tiempo de segundos (desde el comienzo de 1970) se convierten en una cadena de formato de fecha

 

4. UNIX_TIMESTAMP cadena a Timestamp La segundos de la fecha, la operación es la operación inversa de la anteriormente

  

 

   Debido a que no considera UNIX_TIMESTAMP ms, deben tener en cuenta si se puede utilizar el siguiente método

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 ( ' flotador ' ) / 1000)

 

 

5. segundo sello de tiempo convierten tipo de marca de tiempo, se puede utilizar F.to_timestamp

  

 

 

 

 

Árbitro:

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

Supongo que te gusta

Origin www.cnblogs.com/mashuai-191/p/12580628.html
Recomendado
Clasificación