关于split_train_test()函数的一些问题

时间:2017-07-08 18:20:29

标签: linear-regression training-data

我目前正在尝试使用Python的linearregression()模型来描述两个变量X和Y之间的关系。给定一个包含8列和1000行的数据集,我想使用split_train_test将此数据集拆分为训练和测试集。

我的问题:我想知道train_test_split(dataset,test_size,random_test = int)与train_test_split(数据集,test_size)之间有什么区别。另外,第二个是什么(没有设置random_test = int)每次重新运行我的程序时,给我一个不同的测试集和训练集?另外,每次重新运行程序时,第一个是否给我相同的测试集和训练集?设置random_test = 42与random_test = 43有什么区别?例如?

1 个答案:

答案 0 :(得分:0)

在python scikit-learn train_test_split会将您的输入数据分成两组i)train和ii)test。它有参数random_state,允许你随机分割数据。

如果没有提到参数,它将以分层方式对数据进行分类,这将为同一数据集提供相同的分割。

假设您希望随机分割数据,以便您可以使用不同的分割来衡量回归对相同数据的性能。你可以使用random_state来实现它。每个随机状态将为您提供初始数据的伪随机分割。为了跟踪性能并稍后在相同的数据上重现它,您将使用带有之前使用的值的random_state参数。

它对机器学习中的from tkinter import *; class calculator: #def update(self, def __init__(self, window): """ Constructor method. """ self.toCompute = []; self.In = StringVar(); self.Out = StringVar(); # Window title window.title("Logic Calculator"); # The set of 5 frames. ioFrame = Frame(window, relief=GROOVE, borderwidth=3); ioFrame.grid(row=0); ioFrame.pack(); nwFrame = Frame(window); nwFrame.grid(row=1,column=0); nwFrame.pack(); neFrame = Frame(window); neFrame.grid(row=1,column=1); neFrame.pack(); swFrame = Frame(window); swFrame.grid(row=2,column=0); swFrame.pack(); seFrame = Frame(window); seFrame.grid(row=2,column=1); seFrame.pack(); # Top 2 rows: the IO portion Label(ioFrame, textvariable=self.In, relief=SUNKEN).grid(row=0, sticky=W); Label(ioFrame, textvariable=self.Out).grid(row=1, sticky=E); # Top left 2x2 Frame: [ ( | ) ][ T | F ] brlButton = Button(nwFrame, text='(', height=2, width=10).grid(row=0,column=0); brrButton = Button(nwFrame, text=')', height=2, width=10).grid(row=0,column=1); truButton = Button(nwFrame, text='T', height=2, width=10).grid(row=1,column=0); falButton = Button(nwFrame, text='F', height=2, width=10).grid(row=1,column=1); # Top right 2x2 Frame: [ AND | OOR ][ NND | NOR ] andButton = Button(neFrame, text='and', height=2, width=10).grid(row=0,column=0); oorButton = Button(neFrame, text='oor', height=2, width=10).grid(row=0,column=1); nndButton = Button(neFrame, text='nnd', height=2, width=10).grid(row=1,column=0); norButton = Button(neFrame, text='nor', height=2, width=10).grid(row=1,column=1); # Bottom left 2x2 Frame: [ SSO | IIF ][ NSO | NIF ] andButton = Button(swFrame, text='sso', height=2, width=10).grid(row=0,column=0); oorButton = Button(swFrame, text='iif', height=2, width=10).grid(row=0,column=1); nndButton = Button(swFrame, text='nso', height=2, width=10).grid(row=1,column=0); norButton = Button(swFrame, text='nif', height=2, width=10).grid(row=1,column=1); # Bottom right 2x2 Frame:[ EEQ | NEG ][ NEQ | === ] eeqButton = Button(seFrame, text='eeq', height=2, width=10).grid(row=0,column=0); negButton = Button(seFrame, text='neg', height=2, width=10).grid(row=0,column=1); neqButton = Button(seFrame, text='neq', height=2, width=10).grid(row=1,column=0); comButton = Button(seFrame, text='=', height=2, width=10).grid(row=1,column=1); if __name__ == "__main__": # Only runs program if this specfic file is opened. window = Tk(); # The window calculator(window); window.mainloop(); 技术非常有用。