def fuc(x):
x.loc[(x.head(10).index) & (x.tail(10).index),'col_name'] = np.nan
return x
df['col_name'] = df.groupby('date').apply(fuc)['col_name']```
以上写法没报错,但也没实现修改效果。。
1
robbielj 2022-05-17 10:11:02 +08:00
```
def fuc(x): x.loc[np.r_[x.head(10).index.values,x.tail(10).index.values]] = np.nan return x df['col'] = df.groupby('date')["col"].apply(fuc) ``` |
2
milkpuff 2022-05-17 14:32:37 +08:00
apply 每个 group 返回一个值, m 行数据、n 个 group -> 返回 n 行
transfer 返回 shape 和原来一致 m 行数据、n 个 group -> 返回 m 行 你这个应该使用 transfer 另外,(x.head(10).index) & (x.tail(10).index)这句也不是拼接两个 index, 参考 1 楼 |