我是机器学习的初学者。我的学术项目涉及从加速度和陀螺仪数据检测人体姿势。我一直陷于起步阶段。我的加速度计数据具有x,y,z值,陀螺仪也具有存储在文件acc.csv和gyro.csv中的x,y,z值。我想对“站立”,“坐着”,“行走”和“躺着”的位置进行分类。这个想法是使用某种ML算法(有监督)训练机器,然后抛出一个新的acc +陀螺仪数据集,以识别该新数据集的预测结果(受试者目前正在做什么)。我面临以下问题-
我在Github中进行了一些有关活动识别的项目。但是对于像我这样的初学者来说,它们太复杂了。
import pandas as pd
import os
import warnings
from sklearn.utils import shuffle
warnings.filterwarnings('ignore')
os.listdir('../input/testtraindata/')
base_train_dir = '../input/testtraindata/Train_Set/'
#Train Data
train_data = pd.DataFrame(columns = ['activity','ax','ay','az','gx','gy','gz'])
train_folders = os.listdir(base_train_dir)
for tf in train_folders:
files = os.listdir(base_train_dir+tf)
for f in files:
df = pd.read_csv(base_train_dir+tf+'/'+f)
train_data = pd.concat([train_data,df],axis = 0)
train_data = shuffle(train_data)
train_data.reset_index(drop = True,inplace = True)
train_data.head()
令人惊讶的是,如果我从
中删除了最后一个'gz'train_data = pd.DataFrame(columns =['activity','ax','ay','az','gx','gy','gz'])
一切正常。
答案 0 :(得分:1)
您已将数据标记为? -> x,y,z ...的位置=位置?
我不知道这些值(因为我没有看到数据集,也不知道位置,acc或陀螺仪),但是我想您应该有一个以x,y,z为类别的成熟数据集和目标类别“位置”。
如果您需要全部6个(一个csv中的3个,另一个csv中的3个)来定义位置,则可以设置6个类别+位置。
x_1,y_1,z_1,x_2,y_2和z_2之类的东西+位置标签(“位置”类别)。
您还可以使每个职位成为自己的类别,并且将0/1设为true / false。 “ sitting”,“ walking”等...,并且列中的值为0和1。
该职位的时间戳是否重要?如果它不是重要功能,我将其删除。如果以某种方式很重要,则可能要对它们进行装箱。
这是Medium的初学者指南,在其中您可以看到一些如何预处理数据的信息。它还显示了一种热编码:)
还可以尝试使用Google搜索对数据进行预处理,然后可能会找到正确的配方