Karakter aneh saat membaca file CSV dalam format gzip [duplikat]
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
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 .gz
bukan .gzip
, Spark harus dapat dekompresi file csv benar.