見出し画像

pandasからpolarsへの書き換え

CSVの読み込み

pandas

import pandas as pd

file_path = 'example.csv'
encoding = 'utf-8'  # 文字コード
delimiter = ','    # デリミタ
df = pd.read_csv(file_path, encoding=encoding, delimiter=delimiter, error_bad_lines=False)
print(df)

polars

import polars as pl

file_path = 'example.csv'
encoding = 'utf-8'  # 文字コード
delimiter = ','    # デリミタ
df = pl.read_csv(file_path, encoding=encoding, has_header=True, separator=delimiter, ignore_errors=True)
print(df)

データの絞り込み

pandas

import pandas as pd

data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
result = df[df['A'] > 1]
print(result)

polars

import polars as pl

data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pl.DataFrame(data)
result = df.filter(df['A'] > 1)
print(result)

データのグルーピング

pandas

import pandas as pd

data = {
    'Category': ['A', 'B', 'A', 'B', 'A'],
    'Value': [10, 20, 15, 25, 5]
}
df = pd.DataFrame(data)
grouped = df.groupby('Category')['Value'].sum()
print(grouped)

polars

import polars as pl

data = {
    'Category': ['A', 'B', 'A', 'B', 'A'],
    'Value': [10, 20, 15, 25, 5]
}
df = pl.DataFrame(data)
grouped = df.groupby('Category').agg(pl.sum('Value').alias('TotalValue'))
print(grouped)

Dataframeを連想配列に変換

pandas

import pandas as pd

data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [25, 30, 22]
}
df = pd.DataFrame(data)
list_of_records = df.to_dict(orient='records')
print(list_of_records)

polars

import polars as pl

data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [25, 30, 22]
}
df = pl.DataFrame(data)
list_of_records = df.to_dicts()
print(list_of_records)