为 DataFrame 列中的值设置上限和下限

Chr*_*her 2 python dataframe pandas

我有以下专栏:

 Column 1
 1
 10
 5
 100
 50
 1000
 50000
 2000
 100
 1000
 3000
 ...
Run Code Online (Sandbox Code Playgroud)

我想为 Col1 中的每一行分配一个 >= 1000 的值,Col 2 中的值 1000 和每个值 <= 100 的值 100。

 Column 1   Column 2
 1          100
 10         100
 5          100
 100        100
 50         100
 1000       1000
 50000      1000
 2000       1000
 100        100
 1000       1000
 3000       1000
 ...
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

Ale*_*ley 6

您可以使用clip

>>> df['Column 2'] = df['Column 1'].clip(100, 1000)
>>> df
    Column 1  Column 2
0          1       100
1         10       100
2          5       100
3        100       100
4         50       100
5       1000      1000
6      50000      1000
7       2000      1000
8        100       100
9       1000      1000
10      3000      1000
Run Code Online (Sandbox Code Playgroud)

所有低于 100 的值都设置为 100;所有大于 1000 的值都设置为 1000。