мета-данные страницы
Загрузка не удалась. Возможно, проблемы с правами доступа?
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
python:week20 [01/10/2018 03:52] – ybezrukov | python:week20 [04/04/2021 21:56] (текущий) – [Ввод/вывод] Admin Adminovich | ||
---|---|---|---|
Строка 149: | Строка 149: | ||
<code python> | <code python> | ||
| | ||
- | print(df.index()) | + | print(df.index) |
- | print(df.columns()) | + | print(df.columns) |
- | print(df.values()) | + | print(df.values) |
</ | </ | ||
Строка 216: | Строка 216: | ||
2013-01-06 -0.673690 | 2013-01-06 -0.673690 | ||
2013-01-05 -0.424972 | 2013-01-05 -0.424972 | ||
+ | </ | ||
+ | |||
+ | |||
+ | Строки можно перебрать и с помощью цикла for, для этого нужно воспользоваться функцией iterrows | ||
+ | |||
+ | <code python> | ||
+ | for index,row in df.iterrows(): | ||
+ | print(row[' | ||
</ | </ | ||
======= Выборки ======= | ======= Выборки ======= | ||
- | ====== Получение | + | ===== Получение ===== |
Выбор данных из колонок и стобцов очень похож на работу с списками. Одна колонка | Выбор данных из колонок и стобцов очень похож на работу с списками. Одна колонка | ||
Строка 262: | Строка 270: | ||
print(df.loc[dates[0],' | print(df.loc[dates[0],' | ||
</ | </ | ||
+ | |||
+ | ===== Выборка по позиции ===== | ||
+ | |||
+ | Для получения по позиции или по номеру используется функция iloc. Возьмем третью строку | ||
+ | |||
+ | <code python> | ||
+ | print(df.iloc[3]) | ||
+ | </ | ||
+ | |||
+ | Или строки с третьей по четвертую и столбцы с нулевого по первый (внимание, | ||
+ | |||
+ | <code python> | ||
+ | print(df.iloc[3: | ||
+ | </ | ||
+ | |||
+ | Вместо диапазонов можно указать конкретные строки или столбцы, | ||
+ | |||
+ | <code python> | ||
+ | print(df.iloc[df.iloc[[1, | ||
+ | </ | ||
+ | |||
+ | Или же, например, | ||
+ | <code python> | ||
+ | print(df.iloc[df.iloc[1: | ||
+ | </ | ||
+ | Аналогично со столбцами | ||
+ | <code python> | ||
+ | print(df.iloc[:, | ||
+ | </ | ||
+ | |||
+ | ===== Фильтрация с помощью логических выражений ===== | ||
+ | |||
+ | Выберем из таблица все строки, | ||
+ | |||
+ | <code python> | ||
+ | print(df[df.A > 0]) | ||
+ | </ | ||
+ | |||
+ | Или только положительные данные во всей таблице | ||
+ | |||
+ | <code python> | ||
+ | print(df[df > 0]) | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | | ||
+ | 2013-01-01 | ||
+ | 2013-01-02 | ||
+ | 2013-01-03 | ||
+ | 2013-01-04 | ||
+ | 2013-01-05 | ||
+ | 2013-01-06 | ||
+ | </ | ||
+ | |||
+ | Обратите внимание, | ||
+ | |||
+ | Функция isin сверяет значения из строки или столбца со списком, | ||
+ | |||
+ | <code python> | ||
+ | df2 = df.copy() # функция copy копирует данные из одного датафрейма в другой | ||
+ | df2[' | ||
+ | |||
+ | print(df2) | ||
+ | |||
+ | print(df2[' | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | < | ||
+ | | ||
+ | 2013-01-01 | ||
+ | 2013-01-02 | ||
+ | 2013-01-03 -0.861849 -2.104569 -0.494929 | ||
+ | 2013-01-04 | ||
+ | 2013-01-05 -0.424972 | ||
+ | 2013-01-06 -0.673690 | ||
+ | |||
+ | | ||
+ | 2013-01-03 -0.861849 -2.104569 -0.494929 | ||
+ | 2013-01-05 -0.424972 | ||
+ | </ | ||
+ | |||
+ | ====== Ввод/ | ||
+ | |||
+ | Представить столбец в виде списка | ||
+ | |||
+ | <code python> | ||
+ | l = df[' | ||
+ | </ | ||
+ | ===== CSV ===== | ||
+ | Чтение CSV файла делается в одну строку | ||
+ | <code python> | ||
+ | pd.read_csv(' | ||
+ | </ | ||
+ | |||
+ | |||
+ | ====== Задача 4 ====== | ||
+ | |||
+ | Найти всех легендарных покемонов. | ||
+ | |||
+ | ====== Задача 5 ====== | ||
+ | |||
+ | Найти всех производителей шоколада, | ||
+ | |||
+ | < | ||
+ | Страна1 | ||
+ | | ||
+ | | ||
+ | |||
+ | Страна2 | ||
+ | | ||
+ | | ||
+ | | ||
+ | </ | ||
+ | |||
+ |