Polars是一个基于Rust语言的数据操作和分析库,专为大型数据集和高性能计算而设计。它提供了类似于pandas的API,但在性能方面更加强大。
以下是Polars库的一些常见用法:
- 导入Polars库:
import polars as pl
- 读取数据:
df = pl.read_csv('data.csv')
- 写入数据:
df.write_csv('output.csv')
- 创建DataFrame:
df = pl.DataFrame({'column1': [1, 2, 3, 4],'column2': ['a', 'b', 'c', 'd']
})
- 查看DataFrame的前几行:
print(df.head())
- 访问列:
column = df['column_name']
- 选择特定的列:
selected_cols = df.select(['column1', 'column2'])
- 过滤数据:
filtered_data = df.filter(pl.col('column1') > 2)
- 添加新列:
df = df.with_column(pl.col('new_column', [5, 6, 7, 8]))
- 对列进行计算:
df = df.with_column(pl.col('column1') * 2)
- 分组和聚合:
grouped_data = df.groupby('column2').agg({'column1': 'sum'})
- 排序数据:
sorted_data = df.sort('column1', reverse=True)
- 连接多个DataFrame:
joined_data = dfA.join(dfB, on='column1', how='inner')
- 过滤行:
filtered_data = df.filter(pl.col('column_name') > 10)
- 使用条件表达式过滤行:
filtered_data = df.filter(pl.col('column_name').isin([1, 2, 3]))
- 计算列的统计信息:
stats = df['column_name'].describe()
- 重命名列:
df = df.with_column(pl.col('column_name').alias('new_column_name'))
- 删除列:
df = df.drop('column_name')
- 选择前N行:
top_rows = df.head(10)
- 统计每个唯一值的计数:
value_counts = df['column_name'].value_counts()
- 合并DataFrame:
merged_df = dfA.concat(dfB)
- 转置DataFrame:
transposed_df = df.transpose()
- 使用自定义函数进行数据转换:
transformed_df = df.with_column(pl.col('column_name').apply(lambda x: x * 2))
- 将数据按照某列进行分组并应用自定义聚合函数:
grouped_data = df.groupby('column_name').apply(lambda x: x['column_name'].sum())
这只是Polars库的一些常见用法,Polars还提供了更多的功能和操作,如数据合并、数据透视表、窗口函数等。您可以查阅Polars的官方文档以获取更详细的信息和示例。
以上只是Polars库的一些基本用法,Polars还提供了更多的功能和操作,如窗口函数、数据透视表、数据合并等。您可以查阅Polars的官方文档以获取更详细的信息和示例。