编辑 - 我已经找到了一种使用dataframe.describe()进行数据帧的方法 - 我已经在修正后的版本下方附加了 - 这样的方式就是" DataExtract"只运行一次,然后返回数据帧以在Regression或ScatterPlot函数中使用。
-----------------------
import { DateTimePickerDirective } from 'ng2-eonasdan-datetimepicker/dist/datetimepicker.directive';
@NgModule({
imports: [
-------------
],
declarations: [
AppComponent,
---------------
---------------
DateTimePickerDirective
],
providers: [HeroService],
bootstrap: [AppComponent]
})
export class AppModule { }
- 我已经开始开发一些分析函数,并且在初学者级别使用Python,这主要归功于这个网站
我在下面附上了一个简单的例子,说明我当前如何编译我的函数然后由GUI调用,这里我们有一个" DataExtract"函数生成一个框架,然后“回归”#34;或者" ScatterPlot"取决于用户想要对数据做什么。
然后,用户将调用&#34; CombinedRegression&#34;或&#34; CombinedScatterPlot&#34;生成输出 <my-root>Loading...</my-root>
<div class="form-group">
<div class="input-group"
a2e-datetimepicker
[date]="dateTo"
[options]="a2eOptions"
(onChange)="dateToChange($event)"
(onClick)="dateClick()">
<input class="form-control"/>
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
</div>
这座建筑并没有真正高效,因为我必须打电话给&#34; Combined&#34;功能,以达到一个输出,最终迫使我生成&#34; DataExtract&#34;每次运行,即使它与回归和ScatterPlot函数使用的数据相同。 GUI将根据单击的按钮将a和b插槽发送到任一功能
最终我想要做的是1)使用参数a和b提取数据,以及2)在回归或散点图中使用框架,或者在给定用户给出的命令的情况下使用框架。
非常感谢你的帮助
答案 0 :(得分:0)
一种方法是传递数据框X
和数据框Y
。
import pandas as pd
#Extracting the data - Real query would be extracting X and Y from a SQL query and converting to a pandas frame
def DataExtract(Y, X):
d = {Y : [1, 3, 3, 9, 5],
X : [6, 7, 8, 9, 10]}
return df_X, df_Y
#Build process using the data extracted in DataExtract
def Regression(X, Y):
from statsmodels.formula.api import ols
model = ols("Y ~ X", df).fit()
print(model.summary())
#Plot a graph for a given dataframe
def ScatterPlot(X, Y):
import matplotlib.pyplot as plt
plt.scatter(x=X, y=Y)
plt.show()
if __name__ == '__main__':
X, Y = DataExtract()
Regression(X, Y)
Scatterplot(X, Y)
答案 1 :(得分:0)
您真正需要做的就是使用您需要传递的X,Y参数调用要运行的主函数。然后,在这些函数中,将它传递给DataExtract函数,该函数将创建并返回您的数据帧,并从那里继续。
import pandas as pd
#Extracting the data - Real query would be extracting X and Y from a SQL query and converting to a pandas frame
def DataExtract(Y, X):
d = {Y : [1, 3, 3, 9, 5], X : [6, 7, 8, 9, 10]}
df = pd.DataFrame(d)
return df
#Build process using the data extracted in DataExtract
def Regression(X, Y):
from statsmodels.formula.api import ols
df = DataExtract(X, Y)
df.columns = ['Y','X']
model = ols("Y ~ X", df).fit()
print(model.summary())
#Plot a graph for a given dataframe
def ScatterPlot(X, Y):
import matplotlib.pyplot as plt
df = DataExtract(X, Y)
df.columns = ['Y', 'X']
df.plot.scatter(x='X', y='Y')
plt.show()
...如果用户想要同时执行这两项操作,您可以执行以下操作:
def DoBoth(X, Y):
ScatterPlot(X, Y)
Regression(X, Y)