gpt4 book ai didi

pandas - 一次对多个因变量使用 pandas.ols

转载 作者:行者123 更新时间:2023-12-02 09:03:24 28 4
gpt4 key购买 nike

我想知道是否可以将 pandas.ols 模型一次应用于针对一个自变量的多个响应变量的数据框。

想象一下我有以下内容:

In [109]: y=pandas.DataFrame(np.random.randn(10,4))
In [110]: x=pandas.DataFrame(np.random.randn(10,1))

我想做这样的事情:

In [111]: model=pandas.ols(y=y, x=x)

基本上是四个模型输出的结果或至少访问四个模型的系数。如果可能的话,我希望避免循环响应变量。

最佳答案

我认为这应该可以做到。

#First generate the data
x=pd.DataFrame(np.random.randn(10,1))
y=pd.DataFrame(np.random.randn(10,4))

#Since we are doing things manually we'll need to add the constant term to the x matrix
x[1] = ones(10)

#This matrix precomputes (X'X)^-1X which we will premultiply the y matrix by to get results
tmpmat = np.dot(np.linalg.pinv(np.dot(x.T ,x)),x.T)

#Solve for the betas
betamatrix = np.dot(tmpmat,y)

#Compare with the pandas output one at a time.
model=pd.ols(y=y[0], x=x, intercept=False)
model=pd.ols(y=y[1], x=x, intercept=False)

关于pandas - 一次对多个因变量使用 pandas.ols,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14940948/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com