Karakter aneh saat membaca file CSV dalam format gzip [duplikat]

Jan 12 2021

Saya mencoba membaca file CSV, yang saya simpan sebagai file berenkode UTF-8. Ketika saya mencoba membaca file dengan Pandas, dibutuhkan banyak waktu tetapi saya mendapatkan hasil yang diinginkan.

out_pd = pd.read_csv('../files/example_file_out.csv.gzip', sep='\t', encoding='utf-8', compression='gzip')

Melakukan hal yang hampir sama di Spark untuk membaca file yang persis sama dari HDFS:

out_spark = spark.read.format('csv').options(header = "true", sep = "\t", encoding = "UTF-8").load("/Path/to/Folder/example_file_out.csv.gzip" )
out_spark.show()

Dengan hasil ini:

+ ------------------------------------------------- -------------------------------------------------- - + | _ contoh_out.csv.gzip Ѳ Fr$�|�l�A?��̈��L��F��cWZ�F��Ef�^�5C�k�hW���H$ j xH? } N | + ------------------------------------------------- -------------------------------------------------- - + | @ # "<= <^ ... | |? ϟ Ͽ O ... | | ރ Y ^ x o e> Y ... | + ------------------------------------- -------------------------------------------------- -------------- +

Saya benar-benar tidak tahu apa yang saya lakukan salah. Terima kasih sebelumnya atas bantuan Anda!

Jawaban

mck Jan 12 2021 at 03:18

Spark menyimpulkan format kompresi file menggunakan ekstensi file. Secara default file gzip memiliki ekstensi .gz, jadi jika Anda mengubah nama file Anda untuk memiliki perpanjangan .gzbukan .gzip, Spark harus dapat dekompresi file csv benar.