Python 如何按规定将数据读入不同的组

Python 如何按规定将数据读入不同的组,python,pandas,dataframe,Python,Pandas,Dataframe,我使用下面的代码,将数据从中读入两组 import pandas as pd import numpy as np import matplotlib.pyplot as plt from scipy import stats dataFileName='RFInput.xlsx' sheetName='Rawdata' sheetNamePara='paraList' dataRaw=pd.read_excel(dataFileName, sheetname = sheetName) data

我使用下面的代码,将数据从中读入两组

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats
dataFileName='RFInput.xlsx'
sheetName='Rawdata'
sheetNamePara='paraList'
dataRaw=pd.read_excel(dataFileName, sheetname = sheetName)
datapara=pd.read_excel(dataFileName, sheetname = sheetNamePara)

noData=len(dataRaw)
import matplotlib.pylab as plt
from sklearn.cross_validation import train_test_split
from sklearn.cross_validation import cross_val_score
from sklearn.preprocessing import StandardScaler


labels = datapara
x = dataRaw[labels]
y = dataRaw['classVariable']
原始数据:

A   B     C      D    E      F
0   1.2   1.6   3.2  3.2    1.6
1   1.2   1.6   3.2  3.2    1.6
2   2.6   1.9   6.5  6.5    1.9
0   1.2   1.6   3.2  3.2    1.6
1   2.6   1.9   6.5  6.5    1.9
4   1.2   1.6   3.2  3.2    1.6


paraList:
A   C  E  F
Y   N  Y  Y
A、 B、C、D、E、F是我在rawData中的原始变量名,但我只想提取paraList中指定的A、C、E、F变量数据。这些所需变量列在副列表中,并分为两组Y和N,
我想将Y变量数据读入x_Y,将N变量数据读入x_N。

如果我理解正确,您需要原始表的子集。您不需要读取文件两次,只需像
dataRaw[[“A”、“C”、“E”、“F”]]
那样索引数据帧就足够了。您可以将此视图指向另一个变量,也可以使用添加的
.copy()
复制它

但由于这是一个相当基本的问题,我真的建议你阅读这本书

编辑
在本例中,我建议将列和类别列表存储到字典中,并使用简单的列表理解来访问它们,类似这样

dic = {"A":"Y","C":"N","E":"Y","F":"Y"}
y_subset = df[[key for key,value in dic.items() if value == "Y"]]
n_subset = df[[key for key,value in dic.items() if value == "N"]]

因为,我的rawData有更多的变量,但是我每次都在“datapara”中定义我需要的变量数据,datapara中的变量列表每次都会根据需要更改,datapara中的变量列表是两类,例如N,Y,我想确定哪些变量是Y类型,哪些变量是N类型,识别N&Y类别变量后,分别从dataRaw读取N类型变量数据和Y类型变量数据。