Полное руководство: как читать файлы CSV с помощью Pandas


Файлы CSV (значения, разделенные запятыми) являются одним из наиболее распространенных способов хранения данных. К счастью, функция pandas read_csv() позволяет легко читать CSV-файлы в Python практически в любом формате, который вам нужен.

В этом руководстве объясняется несколько способов чтения CSV-файлов в Python с использованием следующего CSV-файла с именем «data.csv» :

playerID,team,points
1,Lakers,26
2,Mavs,19
3,Bucks,24
4,Spurs,22

Пример 1: Чтение CSV-файла в pandas DataFrame

В следующем коде показано, как прочитать файл CSV в DataFrame pandas:

#import CSV file as DataFrame
df = pd.read_csv('data.csv')

#view DataFrame
df

 playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

Пример 2. Чтение определенных столбцов из CSV-файла

Следующий код показывает, как прочитать только столбцы с названиями playerID и points в CSV-файле в pandas DataFrame:

#import only specific columns from CSV file
df = pd.read_csv('data.csv', usecols=['playerID', 'points'])

#view DataFrame
df

 playerID points
0 1 26
1 2 19
2 3 24
3 4 22

В качестве альтернативы вы можете указать индексы столбцов для чтения в pandas DataFrame:

#import only specific columns from CSV file
df = pd.read_csv('data.csv', usecols=[ 0 , 1 ])

#view DataFrame
df

 playerID team
0 1 Lakers
1 2 Mavs
2 3 Bucks
3 4 Spurs

Пример 3. Укажите строку заголовка при импорте файла CSV

В некоторых случаях строка заголовка может быть не первой строкой в CSV-файле. Например, рассмотрим следующий файл CSV, в котором строка заголовка фактически появляется во второй строке:

random,data,values
playerID,team,points
1,Lakers,26
2,Mavs,19
3,Bucks,24
4,Spurs,22

Чтобы прочитать этот файл CSV в DataFrame pandas, мы можем указать заголовок = 1 следующим образом:

#import from CSV file and specify that header starts on second row
df = pd.read_csv('data.csv', header= 1 )

#view DataFrame
df

 playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

Пример 4: Пропустить строки при импорте CSV-файла

Вы также можете легко пропустить строки при импорте CSV-файла, используя аргумент skiprows.Например, следующий код показывает, как пропустить вторую строку при импорте файла CSV:

#import from CSV file and skip second row
df = pd.read_csv('data.csv', skiprows=[ 1 ] )

#view DataFrame
df

 playerID team points
0 2 Mavs 19
1 3 Bucks 24
2 4 Spurs 22

А следующий код показывает, как пропустить вторую и третью строку при импорте CSV-файла:

#import from CSV file and skip second and third rows
df = pd.read_csv('data.csv', skiprows=[ 1, 2 ] )

#view DataFrame
df

 playerID team points
1 3 Bucks 24
2 4 Spurs 22

Пример 5. Чтение CSV-файлов с настраиваемым разделителем

Иногда у вас может быть файл CSV с разделителем, отличным от запятой. Например, предположим, что в нашем CSV-файле в качестве разделителя используется символ подчеркивания:

playerID_team_points
1_Lakers_26
2_Mavs_19
3_Bucks_24
4_Spurs_22

Чтобы прочитать этот CSV-файл в pandas, мы можем использовать аргумент sep , чтобы указать разделитель, который будет использоваться при чтении файла:

#import from CSV file and specify delimiter to use
df = pd.read_csv('data.csv', sep='_')

#view DataFrame
df

 playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

Вы можете найти полную документацию для функции pandas read_csv() здесь .

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.