以流水线的形式进行操作

2024-09-29 22:04:16 发布

您现在位置:Python中文网/ 问答频道 /正文

df = df.loc[:, dict_lup.values()].rename(columns={v: k for k, v in dict_lup.items()})

df['cover'] = df.loc[:, 'cover'] * 100.
df['id'] = df['condition'].map(constants.dict_c) 
df['temperature'] = (df['min_t'] + df['max_t])/2.

有没有办法将上面的代码表示为一个管道?我被困在第一步中,我重命名了dataframe中的一些列,并选择了这些列的一个子集

--编辑: 数据如下:

    max_t   col_a   min_t   cover   condition   pressure
0   38.02   1523106000  19.62   0.48    269.76  1006.64
1   39.02   1523196000  20.07   0.29    266.77  1008.03
2   39  1523282400  19.48   0.78    264.29  1008.29
3   39.11   1523368800  20.01   0.7 263.68  1008.29
4   38.59   1523455200  20.88   0.83    262.35  1007.36
5   39.33   1523541600  22  0.65    261.87  1006.82
6   38.96   1523628000  24.05   0.57    259.27  1006.96
7   39.09   1523714400  22.53   0.88    256.49  1007.94

Tags: columnsiniddfforitemscovermin
1条回答
网友
1楼 · 发布于 2024-09-29 22:04:16

我认为需要^{}

df = df.loc[:, dict_lup.values()].rename(columns={v: k for k, v in dict_lup.items()})
       .assign(cover = df['cover'] * 100.,
               id = df['condition'].map(constants.dict_c),
               temperature = (df['min_t'] + df['max_t'])/2.)

相关问题 更多 >

    热门问题