Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Pandas 将数据帧拆分为测试和训练数据集_Pandas_Split_Training Data - Fatal编程技术网

Pandas 将数据帧拆分为测试和训练数据集

Pandas 将数据帧拆分为测试和训练数据集,pandas,split,training-data,Pandas,Split,Training Data,使用pandas创建两个数据帧:train_df和test_df,其中 列_df有80%的数据是均匀随机选择的,没有 更换 在这里,“无需替换而均匀随机选择的数据”是什么意思 还有,我该怎么做 感谢您,“随机均匀选择”意味着每一行被选入80%范围的概率相等 “不替换”表示每行只考虑一次。一旦它被分配到训练集或测试集,它就不是了 例如,考虑下面的数据: A B 0 5 1 6 2 7 3

使用pandas创建两个数据帧:train_df和test_df,其中 列_df有80%的数据是均匀随机选择的,没有 更换

在这里,“无需替换而均匀随机选择的数据”是什么意思

还有,我该怎么做

感谢您,“随机均匀选择”意味着每一行被选入80%范围的概率相等

“不替换”表示每行只考虑一次。一旦它被分配到训练集或测试集,它就不是了

例如,考虑下面的数据:

A            B

0            5
1            6
2            7
3            8
4            9
如果将此数据集拆分为80%的训练集和20%的测试集,那么我们将得到4行(80%的数据)的训练集和1行(20%的数据)的测试集

无需更换 假设第一行已分配给训练集。现在,培训集是:

A            B

0            5
A            B

0            5
将下一行指定给培训或测试时,将从其余行中选择该行: A B

1            6
2            7
3            8
4            9
带替换件 假设第一行已分配给训练集。现在,培训集是:

A            B

0            5
A            B

0            5
但下一行将使用整个数据集进行分配(即,第一行已放回原始数据集中)

您如何才能做到这一点: 您可以使用scikit学习中的列车测试分离功能:

或者你也可以用熊猫和小熊:

df['random_number'] = np.random.randn(length_of_df)

train = df[df['random_number'] <= 0.8]
test = df[df['random_number'] > 0.8]
df['random\u number']=np.random.randn(长度\u/df)
列车=df[df[‘随机数’]0.8]
“均匀随机选择”意味着每一行被选入80%范围的概率相等

“不替换”表示每行只考虑一次。一旦它被分配到训练集或测试集,它就不是了

例如,考虑下面的数据:

A            B

0            5
1            6
2            7
3            8
4            9
如果将此数据集拆分为80%的训练集和20%的测试集,那么我们将得到4行(80%的数据)的训练集和1行(20%的数据)的测试集

无需更换 假设第一行已分配给训练集。现在,培训集是:

A            B

0            5
A            B

0            5
将下一行指定给培训或测试时,将从其余行中选择该行: A B

1            6
2            7
3            8
4            9
带替换件 假设第一行已分配给训练集。现在,培训集是:

A            B

0            5
A            B

0            5
但下一行将使用整个数据集进行分配(即,第一行已放回原始数据集中)

您如何才能做到这一点: 您可以使用scikit学习中的列车测试分离功能:

或者你也可以用熊猫和小熊:

df['random_number'] = np.random.randn(length_of_df)

train = df[df['random_number'] <= 0.8]
test = df[df['random_number'] > 0.8]
df['random\u number']=np.random.randn(长度\u/df)
列车=df[df[‘随机数’]0.8]
您在两个示例中都添加了“不替换”。在两个示例中都添加了“不替换”。