[英]Classify and Restore data in python
我有一個位於 13 x 506 矩陣中的數據集,我們將數據集稱為 data_1。 我對列數據之一感興趣,讓我們稱該數據列為 data_c1。 Data_c1 是數字,因此可以使用 numpy 庫計算第 50 個百分位數。
我的目標是通過 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
做任何你想做的new_col
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.