在Polars中,可以通过使用枢轴操作来获得所需的结果。以下是针对特定DataFrame的操作方法:
import polars as pl
d = {
'id': ['N/A', 'N/A', '1', '1', '2'],
'type': ['red', 'blue', 'yellow', 'green', 'yellow'],
'area': [0, 0, 3, 4, 5]
}
dp = pl.DataFrame(d)
# Remove rows with 'N/A' in the 'id' column
dp = dp.filter(pl.col("id") != "N/A")
# Perform the pivot operation
dp = dp.pivot('id', 'type', 'area', aggfn='first')
# Fill missing values with 0
dp = dp.fill_null(0)
print(dp)
输出:
shape: (2, 4)
âââââââ¬âââââââ¬ââââââââ¬âââââââ
â id â blue â green â red â
â --- â --- â --- â --- â
â str â i64 â i64 â i64 â
âââââââªâââââââªââââââââªâââââââ¡
â 1 â 0 â 4 â 0 â
â 2 â 0 â 0 â 0 â
âââââââ´âââââââ´ââââââââ´âââââââ