Основы Pandas


Панды DataFrames

Pandas - это инструмент для обработки данных высокого уровня, разработанный Уэсом МакКинни. Он построен на пакете Numpy, а его ключевая структура данных называется DataFrame. DataFrames позволяют хранить табличные данные в строках наблюдений и столбцах переменных и управлять ими.

Есть несколько способов создать DataFrame. Один из способов - использовать словарь. Например:

1
2
3
4
5
6
7
8
dict = { "country" : [ "Бразилия" , "Россия" , "Индия" ,
«Китай» , «Южная Африка» ] ,
«столица» : [ «Бразилиа» , «Москва» , «Нью-Дели» ,
«Пекин» , «Претория» ] ,
"Площадь" : [ 8,516 , 17,10 , 3,286 , 9,597 , 1,221 ] ,
«население» : [ 200,4 , 143,5 , 1252 , 1357 , 52,98 ]
}
импортировать панд как pd
brics = pd . DataFrame ( ДИКТ )
печать ( брикс )
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В 1]:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1/0 0/0

Как вы можете видеть с новым bricsDataFrame, Pandas назначил ключ для каждой страны в виде числовых значений от 0 до 4. Если вы хотите иметь разные значения индекса, например, двухбуквенный код страны, вы также можете легко это сделать. .

1
2
3
4
5
# Установить индекс для brics
брикс . index = [ "BR" , "RU" , "IN" , "CH" , "SA" ]
# Распечатать брику с новыми значениями индекса
печать ( брикс )
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В 1]:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1/0 0/0

Другой способ создать DataFrame - импортировать CSV-файл с помощью Pandas. Теперь csv cars.csvсохранен и может быть импортирован с помощью pd.read_csv:

1
2
3
4
5
6
7
8
# Импортировать панд как pd
импортировать панд как pd
# Импортируем данные cars.csv: cars
cars = pd . read_csv ( 'cars.csv' )
# Распечатать автомобили
печать ( автомобили )
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В 1]:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1/0 0/0

Индексирование фреймов данных

Есть несколько способов проиндексировать фрейм данных Pandas. Один из самых простых способов сделать это - использовать запись в квадратных скобках.

В приведенном ниже примере вы можете использовать квадратные скобки для выбора одного столбца carsDataFrame. Вы можете использовать одинарную или двойную скобку. Одиночная скобка выводит серию Pandas, а двойная скобка выводит Pandas DataFrame.

1
2
3
4
5
6
7
8
9
10
11
12
# Импортировать панды и cars.csv
импортировать панд как pd
cars = pd . read_csv ( 'cars.csv' , index_col = 0 )
# Распечатать столбец страны как серию панд
печать ( автомобили [ 'cars_per_cap' ])
# Распечатать столбец страны как Pandas DataFrame
печать ( автомобили [[ 'cars_per_cap' ]])
# Распечатать DataFrame со страной и drive_right
столбцы
print ( автомобили [[ 'cars_per_cap' , 'country' ]])
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В 1]:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1/0 0/0

Квадратные скобки также могут использоваться для доступа к наблюдениям (строкам) из DataFrame. Например:

1
2
3
4
5
6
7
8
9
# Импортировать данные об автомобилях
импортировать панд как pd
cars = pd . read_csv ( 'cars.csv' , index_col = 0 )
# Распечатать первые 4 наблюдения
печать ( автомобили [ 0 : 4 ])
# Распечатать пятое и шестое наблюдение
печать ( автомобили [ 4 : 6 ])
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В 1]:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1/0 0/0

Вы также можете использовать locи ilocдля выполнения практически любой операции выбора данных. locоснован на метках, что означает, что вы должны указывать строки и столбцы на основе их меток строк и столбцов. ilocоснован на целочисленном индексе, поэтому вам нужно указать строки и столбцы по их целочисленному индексу, как вы это делали в предыдущем упражнении.

1
2
3
4
5
6
7
8
9
# Импортировать данные об автомобилях
импортировать панд как pd
cars = pd . read_csv ( 'cars.csv' , index_col = 0 )
# Распечатать наблюдение для Японии
печать ( cars . iloc [ 2 ])
# Распечатать наблюдения для Австралии и Египта
печать ( cars . loc [[ 'AUS' , 'EG' ]])
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
В 1]:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
1/0 0/0