to_number

'col' dizesini 'format' dize biçimine göre bir sayıya dönüştürün. Dönüştürme başarısız olursa bir özel durum oluşturur.

Biçim, büyük/küçük harfe duyarsız olarak aşağıdaki karakterlerden oluşabilir:

  • '0' veya '9': 0 ile 9 arasında beklenen bir basamak belirtir. Biçim dizesindeki 0 veya 9 dizisi, giriş dizesindeki bir basamak dizisiyle eşleşir. 0/9 dizisi 0 ile başlıyorsa ve ondalık ayırıcıdan önceyse, yalnızca aynı boyuttaki bir basamak dizisiyle eşleşebilir. Aksi takdirde, sıra 9 ile başlıyorsa veya ondalık ayırıcıdan sonraysa, aynı veya daha küçük boyuta sahip bir basamak dizisiyle eşleşebilir.
  • '.' veya 'D': Ondalık ayırıcının konumunu belirtir (isteğe bağlı, yalnızca bir kez izin verilir).
  • ',' veya 'G': Gruplandırma (binlik) ayırıcısının (,) konumunu belirtir. Her gruplandırma ayırıcısının solunda ve sağda 0 veya 9 olmalıdır. 'col', sayının boyutuyla ilgili gruplandırma ayırıcısı ile eşleşmelidir.
  • '$': $ para birimi işaretinin konumunu belirtir. Bu karakter yalnızca bir kez belirtilebilir.
  • 'S' veya 'MI': '-' veya '+' işaretinin konumunu belirtir (isteğe bağlı, biçim dizesinin başında veya sonunda yalnızca bir kez izin verilir). 'S' öğesinin '-' izin verdiğine ancak 'MI' izin vermediğini unutmayın.
  • 'PR': Yalnızca biçim dizesinin sonunda izin verilir; 'sütun'un, açılı ayraçları sarmalayan negatif bir sayıyı gösterdiğini belirtir.

İlgili Databricks SQL fonksiyonu için bakınız to_number fonksiyonu.

Sözdizimi

from pyspark.sql import functions as dbf

dbf.to_number(col=<col>, format=<format>)

Parametreler

Parametre Türü Description
col pyspark.sql.Column veya str Giriş sütunu veya dizeleri.
format pyspark.sql.Column veya str, optional biçimini kullanarak sayı değerlerini dönüştürebilirsiniz.

Örnekler

df = spark.createDataFrame([("$78.12",)], ["e"])
df.select(to_number(df.e, lit("$99.99")).alias('r')).collect()