Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.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
Python 如何修改此函数以接受多个数据帧?_Python_Pandas_Machine Learning_Regression_Analytics - Fatal编程技术网

Python 如何修改此函数以接受多个数据帧?

Python 如何修改此函数以接受多个数据帧?,python,pandas,machine-learning,regression,analytics,Python,Pandas,Machine Learning,Regression,Analytics,我编写了这个函数,我希望它能接受多个DF,这样最终的图就有多条预测的绘制线,coef_DF和其余的系数一起完成 该函数从更大的数据集中提取所需的特征和目标,使用线性回归函数进行预测,然后生成模型,绘制数据集上的直线,并返回包含所有系数的df (这只是一个练习。) 这就是结果: Name Value 0 Intercept 506738 1 Power_1 2.71336e-77 2 Power_2 7.335e-39 3

我编写了这个函数,我希望它能接受多个DF,这样最终的图就有多条预测的绘制线,coef_DF和其余的系数一起完成

该函数从更大的数据集中提取所需的特征和目标,使用线性回归函数进行预测,然后生成模型,绘制数据集上的直线,并返回包含所有系数的df

(这只是一个练习。)

这就是结果:

         Name        Value
0   Intercept       506738
1     Power_1  2.71336e-77
2     Power_2    7.335e-39
3     Power_3   -1.850e-44
4     Power_4    8.437e-50
5     Power_5    0.000e+00
6     Power_6    0.000e+00
7     Power_7    3.645e-55
8     Power_8    1.504e-51
9     Power_9    5.760e-48
10   Power_10    1.958e-44
11   Power_11    5.394e-41
12   Power_12    9.404e-38
13   Power_13   -3.635e-41
14   Power_14    4.655e-45
15   Power_15   -1.972e-49


非常感谢

我不知道你到底想要什么。但我建议,下次试着问一个这样的问题,这个问题很容易被在座的其他人提出,也很容易理解

我试着回答你的问题。如果我误解了你的问题,请纠正我

  • 将任意数量的数据帧传递给函数并打印:
我创建了三个随机数据帧以供使用:

df1 = pd.DataFrame(np.random.randint(0,10,size=(10, 2)), columns=list('AB'))
df2 = pd.DataFrame(np.random.randint(0,10,size=(10, 2)), columns=list('AB'))
df3 = pd.DataFrame(np.random.randint(0,10,size=(10, 2)), columns=list('AB'))
绘制它们的函数:

得到的结果图:


  • 将模型的结果放入
    数据框中
关于你的第二个问题,我不打算过多地关注你的确切细节——例如,你的数据帧的列的名称,等等

对于这个特定示例,我生成了两个随机数组:

X = np.random.randint(0,50 ,size=(50, 2))
y = np.random.randint(0,2 ,size=(50, 1))
然后在此数据上拟合线性回归模型

model=LinearRegression().fit(X,y)
predictions=model.predict(X)
然后将其添加到数据帧:

res_df = pd.DataFrame(predictions,columns = ['Value'])
如果您打印
res\u df

    Value
0   0.420395
1   0.459389
2   0.369648
3   0.416058
4   0.644088
5   0.362072
6   0.363157
7   0.468943
.      .
.      .

只是为了理解-您想将任意数量的
数据帧
传递给您的函数进行绘图,对吗?@R.p.T是的,并将模型的结果放入DFT中。谢谢,这是一个很好的基础,我将努力使其更加清晰和简洁
res_df = pd.DataFrame(predictions,columns = ['Value'])
    Value
0   0.420395
1   0.459389
2   0.369648
3   0.416058
4   0.644088
5   0.362072
6   0.363157
7   0.468943
.      .
.      .