Jadi mari kita mulai dengan contoh sederhana, di mana Anda memiliki data berikut yang disimpan dalam file CSV (dengan nama file 'products_sold')
productbrandpriceComputerA1200TabletB350PrinterC120MonitorD400KeyboardE80Langkah-langkah untuk Mengimpor File CSV ke Python menggunakan Pandas
Langkah 1. Tangkap Jalur File
Pertama, tangkap jalur lengkap tempat file CSV Anda disimpan
Misalnya, misalkan file CSV disimpan di bawah jalur berikut
C. \Users\Ron\Desktop\ products_sold. csv
Anda harus memodifikasi kode Python di bawah ini untuk mencerminkan jalur tempat file CSV disimpan di komputer Anda. Jangan lupa sertakan
- Nama file (seperti yang disorot dalam warna hijau). Anda dapat memilih nama file yang berbeda, tetapi pastikan nama file yang ditentukan dalam kode cocok dengan nama file yang sebenarnya
- Ekstensi file (seperti yang disorot dengan warna biru). Ekstensi file harus '. csv’ saat mengimpor file CSV
Langkah 2. Terapkan kode Python
Ketik/salin kode berikut ke dalam Python, sambil membuat perubahan yang diperlukan pada jalur Anda
Berikut adalah kode untuk contoh kita
import pandas as pd df = pd.read_csv(r'C:\Users\Ron\Desktop\products_sold.csv') print(df)Perhatikan bahwa Anda harus menempatkan 'r' sebelum string jalur untuk mengatasi karakter khusus apa pun di jalur, seperti '\'. Selain itu, jangan lupa untuk meletakkan nama file di ujung jalur + “. csv”
Langkah 3. Jalankan Kode
Terakhir, jalankan kode Python dan Anda akan mendapatkannya
product brand price 0 Computer A 1200 1 Tablet B 350 2 Printer C 120 3 Monitor D 400 4 Keyboard E 80 _Langkah Opsional. Pilih Subset Kolom
Sekarang bagaimana jika Anda ingin memilih subset kolom dari file CSV?
Misalnya, bagaimana jika Anda ingin memilih kolom produk dan harga saja. Jika demikian, Anda dapat menentukan nama kolom tersebut seperti yang diambil di bawah ini
import pandas as pd data = pd.read_csv(r'C:\Users\Ron\Desktop\products_sold.csv') df = pd.DataFrame(data, columns=['product', 'price']) print(df)Anda harus memastikan bahwa nama kolom yang ditentukan dalam kode sama persis dengan nama kolom dalam file CSV. Jika tidak, Anda akan mendapatkan nilai NaN
Setelah Anda siap, jalankan kode (setelah menyesuaikan jalur file), dan Anda hanya akan mendapatkan kolom produk dan harga
Sumber daya tambahan
Anda baru saja melihat cara mengimpor file CSV ke Python menggunakan Pandas. Terkadang, Anda mungkin perlu mengimpor file Excel ke Python. Jika demikian, Anda dapat memeriksa tutorial berikut yang menjelaskan cara mengimpor file Excel ke Python
Setelah Anda mengimpor file Anda ke Python, Anda dapat mulai menghitung beberapa statistik menggunakan Panda. Atau, Anda dapat dengan mudah mengekspor Pandas DataFrame ke CSV
Untuk mengetahui lebih lanjut cara menggunakan Panda untuk mengimpor file CSV, silakan kunjungi Dokumentasi Panda
Masalah. Diberi file CSV, bagaimana cara membaca hanya kolom tertentu dari file csv? . )
Contoh. Pertimbangkan file import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])_3 berikut (import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])4)
Country,Capital,Population,Area Germany,Berlin,"84,267,549","348,560" France,Paris,"65,534,239","547,557" Spain,Madrid,"46,787,468","498,800" Italy,Rome,"60,301,346","294,140" India,Delhi,"1,404,495,187","2,973,190" USA,Washington,"334,506,463","9,147,420" China,Beijing,"1,449,357,022","9,388,211" Poland,Warsaw,"37,771,789","306,230" Russia,Moscow,"146,047,418","16,376,870" England,London,"68,529,747","241,930"_Pertanyaan. Bagaimana Anda membaca file csv di atas dan menampilkan kolom berikut –
- import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])_5 kolom bersama dengan kolom import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])6?
- Semua nilai di kolom import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])_7?
Metode 1. Menggunakan Panda
Menggunakan perpustakaan Pandas mungkin merupakan opsi terbaik jika Anda berurusan dengan file csv. Anda dapat dengan mudah membaca file csv dan menyimpan seluruh kolom dalam sebuah variabel
Kode
import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])_Keluaran
Germany Berlin France Paris Spain Madrid Italy Rome India Delhi USA Washington China Beijing Poland Warsaw Russia Moscow England London 0 84,267,549 1 65,534,239 2 46,787,468 3 60,301,346 4 1,404,495,187 5 334,506,463 6 1,449,357,022 7 37,771,789 8 146,047,418 9 68,529,747 Name: Population, dtype: objectPenjelasan
- Baca file csv menggunakan fungsi import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])_8 Pandas
- Simpan semua informasi kolom Negara dan Modal dalam variabel bebas menggunakan –
- import pandas as pd
df = pd.read_csv("countries.csv")
country = df['Country']
# or
# country = df.Country
capital = df['Capital']
# or
# capital = df.Capital
# displaying selected columns (Country and Capital)
for x, y in zip(country, capital):
print(f"{x} {y}")
# displaying a single column (Country)
print()
print(df['Population'])_9
- Sebagai alternatif, Anda juga dapat menggunakan Germany Berlin France Paris Spain Madrid Italy Rome India Delhi USA Washington China Beijing Poland Warsaw Russia Moscow England London 0 84,267,549 1 65,534,239 2 46,787,468 3 60,301,346 4 1,404,495,187 5 334,506,463 6 1,449,357,022 7 37,771,789 8 146,047,418 9 68,529,747 Name: Population, dtype: object0
- Germany Berlin
France Paris
Spain Madrid
Italy Rome
India Delhi
USA Washington
China Beijing
Poland Warsaw
Russia Moscow
England London
0 84,267,549
1 65,534,239
2 46,787,468
3 60,301,346
4 1,404,495,187
5 334,506,463
6 1,449,357,022
7 37,771,789
8 146,047,418
9 68,529,747
Name: Population, dtype: object_1
- Sebagai alternatif, Anda juga dapat menggunakan Germany Berlin France Paris Spain Madrid Italy Rome India Delhi USA Washington China Beijing Poland Warsaw Russia Moscow England London 0 84,267,549 1 65,534,239 2 46,787,468 3 60,301,346 4 1,404,495,187 5 334,506,463 6 1,449,357,022 7 37,771,789 8 146,047,418 9 68,529,747 Name: Population, dtype: object2
- import pandas as pd
df = pd.read_csv("countries.csv")
country = df['Country']
# or
# country = df.Country
capital = df['Capital']
# or
# capital = df.Capital
# displaying selected columns (Country and Capital)
for x, y in zip(country, capital):
print(f"{x} {y}")
# displaying a single column (Country)
print()
print(df['Population'])_9
- Untuk menampilkan nama negara dan ibukotanya secara bersamaan, Anda dapat mengikat dua kolom, Germany Berlin France Paris Spain Madrid Italy Rome India Delhi USA Washington China Beijing Poland Warsaw Russia Moscow England London 0 84,267,549 1 65,534,239 2 46,787,468 3 60,301,346 4 1,404,495,187 5 334,506,463 6 1,449,357,022 7 37,771,789 8 146,047,418 9 68,529,747 Name: Population, dtype: object3 dan Germany Berlin France Paris Spain Madrid Italy Rome India Delhi USA Washington China Beijing Poland Warsaw Russia Moscow England London 0 84,267,549 1 65,534,239 2 46,787,468 3 60,301,346 4 1,404,495,187 5 334,506,463 6 1,449,357,022 7 37,771,789 8 146,047,418 9 68,529,747 Name: Population, dtype: object4, menggunakan fungsi zip() dan kemudian menampilkan setiap negara beserta ibukotanya menggunakan loop for pada objek zip
- Untuk menampilkan semua nilai pada kolom populasi, Anda cukup menggunakan Germany Berlin France Paris Spain Madrid Italy Rome India Delhi USA Washington China Beijing Poland Warsaw Russia Moscow England London 0 84,267,549 1 65,534,239 2 46,787,468 3 60,301,346 4 1,404,495,187 5 334,506,463 6 1,449,357,022 7 37,771,789 8 146,047,418 9 68,529,747 Name: Population, dtype: object5
TRIVIA
Germany Berlin
France Paris
Spain Madrid
Italy Rome
India Delhi
USA Washington
China Beijing
Poland Warsaw
Russia Moscow
England London
0 84,267,549
1 65,534,239
2 46,787,468
3 60,301,346
4 1,404,495,187
5 334,506,463
6 1,449,357,022
7 37,771,789
8 146,047,418
9 68,529,747
Name: Population, dtype: object6 adalah fungsi bawaan di Python yang mengambil sejumlah iterable yang berubah-ubah dan mengikatnya menjadi satu iterable, objek Germany Berlin
France Paris
Spain Madrid
Italy Rome
India Delhi
USA Washington
China Beijing
Poland Warsaw
Russia Moscow
England London
0 84,267,549
1 65,534,239
2 46,787,468
3 60,301,346
4 1,404,495,187
5 334,506,463
6 1,449,357,022
7 37,771,789
8 146,047,418
9 68,529,747
Name: Population, dtype: object7. Ini menggabungkan nilai Germany Berlin
France Paris
Spain Madrid
Italy Rome
India Delhi
USA Washington
China Beijing
Poland Warsaw
Russia Moscow
England London
0 84,267,549
1 65,534,239
2 46,787,468
3 60,301,346
4 1,404,495,187
5 334,506,463
6 1,449,357,022
7 37,771,789
8 146,047,418
9 68,529,747
Name: Population, dtype: object8 dari setiap argumen iterable menjadi sebuah tuple
Baca lebih lanjut tentang zip() di sini
➤ Pengindeksan Berbasis Daftar dari DataFrame
Jika Anda merasa tidak nyaman menggunakan Germany Berlin France Paris Spain Madrid Italy Rome India Delhi USA Washington China Beijing Poland Warsaw Russia Moscow England London 0 84,267,549 1 65,534,239 2 46,787,468 3 60,301,346 4 1,404,495,187 5 334,506,463 6 1,449,357,022 7 37,771,789 8 146,047,418 9 68,529,747 Name: Population, dtype: object6 untuk menampilkan banyak kolom sekaligus, Anda memiliki opsi lain. Anda cukup menggunakan pengindeksan berbasis daftar untuk mencapai tujuan Anda
Pengindeksan berbasis daftar adalah teknik yang memungkinkan Anda meneruskan beberapa nama kolom sebagai daftar dalam pemilih tanda kurung siku
Contoh
import pandas as pd df = pd.read_csv("countries.csv") print() print(df[['Country', 'Capital']])Keluaran
Country Capital 0 Germany Berlin 1 France Paris 2 Spain Madrid 3 Italy Rome 4 India Delhi 5 USA Washington 6 China Beijing 7 Poland Warsaw 8 Russia Moscow 9 England LondonMetode 2. Pengindeksan Berbasis Integer dengan iloc
Mendekati. Idenya di sini adalah menggunakan import pandas as pd df = pd.read_csv("countries.csv") print() print(df[['Country', 'Capital']])_0 untuk mengakses masing-masing kolom dari DataFrame menggunakan pengindeksan. Perhatikan bahwa kolom pertama selalu memiliki indeks 0, sedangkan kolom kedua memiliki indeks 1, dan seterusnya
- import pandas as pd df = pd.read_csv("countries.csv") print() print(df[['Country', 'Capital']])1 digunakan untuk memilih baris individual. Gunakan titik dua pengirisimport pandas as pd df = pd.read_csv("countries.csv") print() print(df[['Country', 'Capital']])_2 untuk memastikan semua baris telah dipilih
- import pandas as pd
df = pd.read_csv("countries.csv")
print()
print(df[['Country', 'Capital']])3 digunakan untuk memilih kolom individu
- Gunakan import pandas as pd df = pd.read_csv("countries.csv") print() print(df[['Country', 'Capital']])_4 untuk menyimpan nilai kolom Negara
- import pandas as pd df = pd.read_csv("countries.csv") print() print(df[['Country', 'Capital']])5 untuk menyimpan nilai kolom Modal
- import pandas as pd df = pd.read_csv("countries.csv") print() print(df[['Country', 'Capital']])6 untuk menyimpan nilai kolom Populasi
Keluaran
Country Capital 0 Germany Berlin 1 France Paris 2 Spain Madrid 3 Italy Rome 4 India Delhi 5 USA Washington 6 China Beijing 7 Poland Warsaw 8 Russia Moscow 9 England London ['84,267,549' '65,534,239' '46,787,468' '60,301,346' '1,404,495,187' '334,506,463' '1,449,357,022' '37,771,789' '146,047,418' '68,529,747']Metode 3. Pengindeksan Berbasis Nama dengan loc()
Alih-alih memilih kolom berdasarkan indeksnya, Anda juga dapat memilihnya berdasarkan namanya menggunakan pemilih import pandas as pd df = pd.read_csv("countries.csv") print() print(df[['Country', 'Capital']])7
Contoh berikut menunjukkan cara memilih kolom import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])5 dan import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])6 dari DataFrame yang diberikan
import pandas as pd data = pd.read_csv('countries.csv') val = data.loc[:, ['Country', 'Capital']] print(val)Keluaran
Country Capital 0 Germany Berlin 1 France Paris 2 Spain Madrid 3 Italy Rome 4 India Delhi 5 USA Washington 6 China Beijing 7 Poland Warsaw 8 Russia Moscow 9 England LondonTutorial Terkait. Mengiris Data dari Pandas DataFrame menggunakan. lokasi dan. iloc
Metode 4. Menggunakan Modul csv
Modul import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])3 adalah opsi spektakuler lainnya di Python yang memungkinkan Anda bermain dengan file csv. Mari kita lihat kode yang membantu kita membaca file csv yang diberikan dan kemudian membaca kolom tertentu darinya
import csv population = [] with open('countries.csv', newline='', encoding='utf-8-sig') as csvfile: data = csv.DictReader(csvfile) for r in data: print("Country", ":", "Capital") # append values from population column to population list population.append(r['Population']) # displaying specific columns (Country and Capital) print(r['Country'], ":", r['Capital']) # display the population list print(population)Keluaran
import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])_0Penjelasan
- Impor modul import pandas as pd
df = pd.read_csv("countries.csv")
country = df['Country']
# or
# country = df.Country
capital = df['Capital']
# or
# capital = df.Capital
# displaying selected columns (Country and Capital)
for x, y in zip(country, capital):
print(f"{x} {y}")
# displaying a single column (Country)
print()
print(df['Population'])_3 dan buka file csv. Pastikan Anda memasukkan argumen Country Capital
0 Germany Berlin
1 France Paris
2 Spain Madrid
3 Italy Rome
4 India Delhi
5 USA Washington
6 China Beijing
7 Poland Warsaw
8 Russia Moscow
9 England London_2 karena membantu menghilangkan karakter yang tidak dapat dibaca yang mungkin muncul dalam file csv yang diberikan
- Country Capital 0 Germany Berlin 1 France Paris 2 Spain Madrid 3 Italy Rome 4 India Delhi 5 USA Washington 6 China Beijing 7 Poland Warsaw 8 Russia Moscow 9 England London_3
- Izinkan Python untuk membaca file csv sebagai kamus menggunakan objek Country Capital 0 Germany Berlin 1 France Paris 2 Spain Madrid 3 Italy Rome 4 India Delhi 5 USA Washington 6 China Beijing 7 Poland Warsaw 8 Russia Moscow 9 England London4
- Setelah file dibaca dalam bentuk kamus, Anda dapat dengan mudah mengambil nilai dari kolom masing-masing dengan menggunakan kunci dalam tanda kurung siku dari kamus. Di sini setiap kolom mewakili kunci dalam kamus yang diberikan
Bonus. Berikut sekilas tampilan kelas Country Capital 0 Germany Berlin 1 France Paris 2 Spain Madrid 3 Italy Rome 4 India Delhi 5 USA Washington 6 China Beijing 7 Poland Warsaw 8 Russia Moscow 9 England London5
import pandas as pd df = pd.read_csv("countries.csv") country = df['Country'] # or # country = df.Country capital = df['Capital'] # or # capital = df.Capital # displaying selected columns (Country and Capital) for x, y in zip(country, capital): print(f"{x} {y}") # displaying a single column (Country) print() print(df['Population'])_1Keluaran
Jelas dari keluaran bahwa Country Capital 0 Germany Berlin 1 France Paris 2 Spain Madrid 3 Italy Rome 4 India Delhi 5 USA Washington 6 China Beijing 7 Poland Warsaw 8 Russia Moscow 9 England London_6 mengembalikan kamus untuk setiap baris sedemikian rupa sehingga tajuk kolom adalah kunci sedangkan nilai dalam baris adalah nilai terkait dalam kamus
Kesimpulan
Singkatnya, ada empat cara utama untuk mengakses kolom tertentu dari file csv yang diberikan
- Pengindeksan Berbasis Daftar
- Pengindeksan Berbasis Integer
- Pengindeksan Berbasis Nama
- Menggunakan modul csv Country Capital 0 Germany Berlin 1 France Paris 2 Spain Madrid 3 Italy Rome 4 India Delhi 5 USA Washington 6 China Beijing 7 Poland Warsaw 8 Russia Moscow 9 England London_7 kelas
Jangan ragu untuk menggunakan salah satu yang paling cocok untuk Anda. Saya harap tutorial ini membantu Anda. Silakan berlangganan dan nantikan tutorial menarik lainnya. Selamat belajar
Pelajari Panda dengan Cara yang Menyenangkan dengan Memecahkan Teka-Teki Kode
Jika Anda ingin meningkatkan keterampilan Panda Anda, pertimbangkan untuk memeriksa buku pembelajaran berbasis teka-teki saya Coffee Break Pandas (Amazon Link)
Ini berisi 74 teka-teki Panda buatan tangan termasuk penjelasannya. Dengan memecahkan setiap teka-teki, Anda akan mendapatkan skor yang mewakili tingkat keahlian Anda dalam Panda. Bisakah Anda menjadi Grandmaster Panda?
Coffee Break Pandas menawarkan pendekatan berbasis kesenangan untuk penguasaan ilmu data—dan pengalaman belajar yang benar-benar gamified
Shubham Sayon
Saya seorang Blogger Python profesional dan pembuat Konten. Saya telah menerbitkan banyak artikel dan membuat kursus selama periode waktu tertentu. Saat ini saya bekerja sebagai pekerja lepas penuh waktu dan saya memiliki pengalaman dalam domain seperti Python, AWS, DevOps, dan Networking