分类和恢复 python 中的数据
Classify and Restore data in python
我有一个位于 13 x 506 矩阵中的数据集,我们称该数据集为 data_1。我对其中一列数据感兴趣,我们称该数据列为 data_c1。 Data_c1是数字,所以第50个百分位数可以用numpy库计算。
我的目标是通过 data_c1,对它是高于还是低于第 50 个百分位(上面的 y=1,下面的 y=0)进行二元分类,并将该信息存储在具有相应标签的新矩阵(y=1 或 y=0。)
我想出了如何加载数据和计算 t50(见下文)。有人可以告诉我如何完成重新分类吗?我想我需要使用 while 循环,但我无法将其恢复到新矩阵中。
到目前为止,这是我的代码:
#import libraries
import numpy as np
import pandas as pd
#import data set
from datasoure import data_file
data_file = data_1()
data_1['data_c1'] = data_c1
#calculate percentile using numpy
t50 = np.percentile(data_1, 50)
#classify target data as y=1 for >=t50 or <=t50
#while loop????
您可以应用这样的函数:
def classifier(row):
global t50 #defined somewhere else
if row["data_c1"] > t50:
return 1
else:
return 0
new_col = df.apply(classifier, axis=1)
然后你可以用new_col
做任何你想做的事
我有一个位于 13 x 506 矩阵中的数据集,我们称该数据集为 data_1。我对其中一列数据感兴趣,我们称该数据列为 data_c1。 Data_c1是数字,所以第50个百分位数可以用numpy库计算。
我的目标是通过 data_c1,对它是高于还是低于第 50 个百分位(上面的 y=1,下面的 y=0)进行二元分类,并将该信息存储在具有相应标签的新矩阵(y=1 或 y=0。)
我想出了如何加载数据和计算 t50(见下文)。有人可以告诉我如何完成重新分类吗?我想我需要使用 while 循环,但我无法将其恢复到新矩阵中。
到目前为止,这是我的代码:
#import libraries
import numpy as np
import pandas as pd
#import data set
from datasoure import data_file
data_file = data_1()
data_1['data_c1'] = data_c1
#calculate percentile using numpy
t50 = np.percentile(data_1, 50)
#classify target data as y=1 for >=t50 or <=t50
#while loop????
您可以应用这样的函数:
def classifier(row):
global t50 #defined somewhere else
if row["data_c1"] > t50:
return 1
else:
return 0
new_col = df.apply(classifier, axis=1)
然后你可以用new_col