DataFrame — одна из ключевых структур данных в Pandas, представляющая собой двумерную таблицу. Есть множество способов создать DataFrame, и в этой статье мы рассмотрим, как это делать из списков, словарей и внешних источников.
Самый простой способ создать DataFrame — использовать список списков:
import pandas as pd
data = [[1, 'Anna'], [2, 'Bob'], [3, 'Charlie']]
df = pd.DataFrame(data, columns=['ID', 'Name'])
print(df)
# ID Name
# 0 1 Anna
# 1 2 Bob
# 2 3 Charlie
В этом примере каждый внутренний список становится строкой в DataFrame.
Словари — еще один удобный способ создания DataFrame, где ключи словаря становятся именами столбцов, а значения — данными:
data = {
'ID': [1, 2, 3],
'Name': ['Anna', 'Bob', 'Charlie']
}
df = pd.DataFrame(data)
print(df)
# ID Name
# 0 1 Anna
# 1 2 Bob
# 2 3 Charlie
Такой метод особенно удобен, когда у вас есть структурированные данные, где каждому столбцу соответствует набор данных.
Pandas предоставляет множество удобных функций для загрузки данных из различных внешних источников:
Самый популярный формат для хранения табличных данных. Для чтения данных из CSV используйте read_csv()
:
df = pd.read_csv('path_to_file.csv')
Если ваши данные хранятся в формате Excel, используйте read_excel()
:
df = pd.read_excel('path_to_file.xlsx')
Для этой функции потребуется дополнительная установка библиотеки openpyxl.
Для загрузки данных из SQL базы данных можно использовать read_sql()
:
from sqlalchemy import create_engine
# создание соединения с базой данных
engine = create_engine('sqlite:///path_to_db.db')
query = "SELECT * FROM table_name"
df = pd.read_sql(query, engine)
JSON (JavaScript Object Notation) - это легкий формат обмена данными, который легко читается и анализируется. Для загрузки данных из JSON файлов используйте read_json()
:
df = pd.read_json('path_to_file.json')
Также возможно создание DataFrame напрямую из JSON строки:
json_string = '{"a": [1, 2, 3], "b": [4, 5, 6]}'
df = pd.read_json(json_string)
Pandas может извлекать таблицы из HTML-документов. Это особенно полезно при работе с веб-скрапингом.
url = "http://example.com/some_table_data.html"
df_list = pd.read_html(url)
Обратите внимание, что read_html()
возвращает список DataFrames, так как на одной странице может быть несколько таблиц.
Parquet — это популярный колоночный формат хранения для Hadoop. Он предоставляет высокоэффективную сжатую кодировку данных.
df = pd.read_parquet('path_to_file.parquet')
Если у вас есть данные в Google BigQuery, вы можете легко их извлечь в DataFrame:
from pandas.io import gbq
query = "SELECT * FROM `project.dataset.table`"
df = gbq.read_gbq(query, project_id='your_project_id')
Это основные методы для создания DataFrame из различных источников. Важно отметить, что для некоторых методов потребуются дополнительные библиотеки или зависимости, поэтому перед их использованием убедитесь в их наличии в вашем рабочем окружении.
Создание DataFrame в Pandas — процесс простой и гибкий. В зависимости от источника ваших данных и их структуры вы всегда можете выбрать наиболее подходящий метод
Содержание: