分类和恢复 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

做任何你想做的事