我有一个物种极地数据框、89 个日期列和 23 个独特物种。目标是通过 groupby 以及一系列列进行聚合。 iloc 将是在 pandas 中执行此操作的方法,但选择选项似乎并没有按照我想要的方式工作。
在熊猫中:
gb = df.groupby(["Common_name"]).agg(dict(zip(df.iloc[:, 32:103].columns, ["mean"] * len(df.iloc[:, 32:103]))))
有没有办法选择极坐标中的列索引?
要选择单列,存在
pl.nth
(自极坐标0.20.26),可以在选择上下文中使用。
import polars as pl
(
pl.DataFrame({
"a": [True, True, False],
"b": [1, 2, 3],
"c": ["a", "b", "c"],
})
.select(pl.nth(1))
)
shape: (3, 1)
┌─────┐
│ b │
│ --- │
│ i64 │
╞═════╡
│ 1 │
│ 2 │
│ 3 │
└─────┘
要选择多列,最简单的方法(如@jqurious 的评论中所述)依赖于
df.columns
中的列列表。
df = pl.DataFrame({
"a": [True, True, False],
"b": [1, 2, 3],
"c": ["a", "b", "c"],
})
df.select(df.columns[1:3])
shape: (3, 2)
┌─────┬─────┐
│ b ┆ c │
│ --- ┆ --- │
│ i64 ┆ str │
╞═════╪═════╡
│ 1 ┆ a │
│ 2 ┆ b │
│ 3 ┆ c │
└─────┴─────┘