数据标签:Python

数据标签:Python,python,pandas,csv,numpy,dataframe,Python,Pandas,Csv,Numpy,Dataframe,考虑到两个参数,我必须在csv中按行标记数据: 1. VE in range 0.9 to 1.3 or 0 2. Calculated load value in range 20 to 50 我必须添加另一列,将这些列标记为1,将其他列标记为-1 我尝试了numpy.where和pandas.where,但它给出了一个错误,表示系列不明确 另外,如何使用python预处理来实现相同的功能 您可以使用np执行此操作。其中: import numpy as np In [335]: df O

考虑到两个参数,我必须在
csv
中按行标记数据:

1. VE in range 0.9 to 1.3 or 0
2. Calculated load value in range 20 to 50
我必须添加另一列,将这些列标记为
1
,将其他列标记为
-1

我尝试了
numpy.where
pandas.where
,但它给出了一个错误,表示
系列不明确

另外,如何使用python预处理来实现相同的功能


您可以使用
np执行此操作。其中

import numpy as np

In [335]: df
Out[335]: 
     VE  load_value
0  0.59        31.0
1  0.66        26.7
2  0.57        47.5
3  0.54        70.2
4  0.59        45.1
5  0.85        31.0
6  0.94        33.7
7  0.97        32.9
8  0.96        32.9

In [336]: df['label'] = np.where((df.VE <1.3) & (df.VE >= 0.9) & (df.load_value >=20) & (df.load_value <50), 1, -1)

In [337]: df
Out[337]: 
     VE  load_value  label
0  0.59        31.0     -1
1  0.66        26.7     -1
2  0.57        47.5     -1
3  0.54        70.2     -1
4  0.59        45.1     -1
5  0.85        31.0     -1
6  0.94        33.7      1
7  0.97        32.9      1
8  0.96        32.9      1
将numpy导入为np
In[335]:df
出[335]:
VE荷载u值
0  0.59        31.0
1  0.66        26.7
2  0.57        47.5
3  0.54        70.2
4  0.59        45.1
5  0.85        31.0
6  0.94        33.7
7  0.97        32.9
8  0.96        32.9
在[336]中:df['label']=np.其中((df.VE=0.9)和(df.load\u值>=20)和(df.load\u值