私はpyspark.sqlを用いたスパークにCSVファイルをインポートしてによって一時テーブルとしてそれを登録した次のような値を持っている「geo_location」と呼ばれる列がある「geo_table」テーブルでは文字列値から数値コードを取得するには?
import pyspark
from pyspark.sql import SQLContext
sc = pyspark.SparkContext()
from pyspark.sql import HiveContext
sqlCtx= HiveContext(sc)
spark_df = sqlCtx.read.format('com.databricks.spark.csv').options(header='true', inferschema='true').load("./data/geo_file.csv")
spark_df.registerTempTable("geo_table")
:
アメリカ>テキサス州> 618
アメリカ>ニュージャージー州> 241
米国> NJ
私の質問は、これらのテキスト値を数値に変換するにはどうすればいいですか? SQLまたはpyspark.sqlで?
パンダでは、私は、私の視点から、あなたの問題を解決するために、そこにいくつかの方法をこの
df["geo_location_categories"] = df["geo_location"].astype('category')
df["geo_location_codes"] = df["geo_location_categories"].cat.codes