我刚刚学习了熊猫,基本上我想根据存储在另一个数据帧中的ID来获取数据帧的某些行。让我向您展示代码:
import pandas as pd
from sklearn.model_selection import train_test_split
f_data="data.tsv"
all_data = pd.read_csv(f_data,delimiter='\t',encoding='utf-8',header=None)
x_data = all_data[[0,1,3]]
y_data = all_data[[2]]
# Split train and test sets
x_train,x_test,y_train,y_test = train_test_split(x_data,y_data,test_size=0.1)
all_data共有12列。我在x_data中使用3列,在y_data中使用1列。
一旦我创建了x_train
和x_test
,我想将这些实例写入tsv
文件中,但同时我想将所有存储在{{1 }}。为此,我需要将all_data
和x_train
中的实例与x_test
进行匹配。我该怎么办?
编辑
这是我的数据的样子:
all_data
all_data
0 1 2 3 ... 8 9 10 11
0 35 Auch in Großbritannien, wo 19 Atomreaktoren in... Ausstieg -1.0 ... Sunday Times Sunday Times NaN 1
# continues like that
x_train
所以,我要做的是在all_data中获取以939,710,288,854,433开头的行并将其写入文件。
答案 0 :(得分:0)
拆分数据的index
与原始数据相对应,可用于查找原始数据(假设索引是唯一的):
all_data.loc[x_train.index]
all_data.loc[x_test.index]