我正在運行 PySpark v1.6.0,并且我有一列字符串值(根據 .printSchema),但是當我嘗試根據列值以“[”字符開頭或包含“, " 字符,在這兩種情況下,都是說我期望評估為 True 的行仍然是 False ...當我運行代碼時:col_name = "attempt_params_attempt_response_id"resultDF.select(col_name, resultDF[col_name].like(",")).show(50)我得到:我不明白這是怎么可能的,因為字符串值顯然包含一個逗號,所以該行應該返回true,而不是false.同樣,當我嘗試將行轉換為ArrayType(StringType())(這是我的最終目標)時,它的行為也好像我的行不包含逗號......當我運行代碼時:from pyspark.sql.types import ArrayType, IntegerType, StringTypecol_name = "attempt_params_attempt_response_id"resultDF.withColumn(col_name, split(resultDF[col_name], ",\s*") .cast(ArrayType(StringType()))).select(col_name).show(40)我得到結果:我想知道是否存在某種奇怪的編碼問題導致字符,與數據中似乎是,字符的字符不匹配......但我真的不確定。關于為什么會發生這種情況以及如何在不創建多維數組文本的情況下實際使演員表工作的任何想法?
帶逗號的 PySpark 值不包含逗號??
慕的地6264312
2021-06-07 18:01:45
