EDIT - dataframe.describe()를 사용하여 데이터 프레임을 수행하는 방법을 찾았습니다. - 수정 된 버전 아래에 첨부했습니다. 이렇게하면 "DataExtract"가 한 번만 실행되고 데이터 프레임이 회귀 또는 ScatterPlot 함수에서 사용되도록 반환됩니다.Python Pandas - 다른 함수에 데이터 프레임 전달
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)
df = df.copy(deep=True)
return df
# Build process using the data extracted in DataExtract
def Regression(df):
from statsmodels.formula.api import ols
df.describe()
df.columns = ['Y', 'X']
model = ols("Y ~ X", df).fit()
print(model.summary())
# Plot a graph for a given dataframe
def ScatterPlot(df):
import matplotlib.pyplot as plt
df.describe()
df.columns = ['Y', 'X']
df.plot.scatter(x='X', y='Y')
plt.show()
DataSet = DataExtract("a","b")
Regression(DataSet)
- 나는 내가 현재 내 기능을 컴파일하는 방법의 단순화 된 예를 아래에 동봉 된이 사이트
에 주로 덕분에 몇 가지 분석 기능을 개발하고 초보자 수준에서 파이썬을 사용하기 시작했습니다 그런 다음 GUI에 의해 호출됩니다. 여기서 우리는 프레임을 생성 한 다음 "회귀 분석"또는 "데이터 수집"기능을 사용하여 사용자가 데이터로 수행하고자하는 작업에 따라 결과를 얻습니다.
사용자는 출력 내가 출력에 도달하기 위해 "결합"함수를 호출해야으로이 건물이 정말 효율적이지 않습니다
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)
df = df.copy(deep=True)
return df
#Build process using the data extracted in DataExtract
def Regression(df):
from statsmodels.formula.api import ols
df.columns = ['Y','X']
model = ols("Y ~ X", df).fit()
print(model.summary())
#Plot a graph for a given dataframe
def ScatterPlot(df):
import matplotlib.pyplot as plt
df.columns = ['Y', 'X']
df.plot.scatter(x='X', y='Y')
plt.show()
def CombinedRegression(Y,X):
Regression(DataExtract(Y, X))
def CombinedScatterPlot(Y,X):
ScatterPlot(DataExtract(Y, X))
CombinedRegression("given Y","given X")
CombinedScatterPlot("given Y","given X")
를 생성하기 위해 "CombinedRegression"또는 "CombinedScatterPlot"중 하나를 부를 것이다 그것은 회귀 및 ScatterPlot 함수 모두에 사용되는 동일한 데이터 임에도 불구하고 궁극적으로 매번 "DataExtract"함수를 생성해야합니다. 어떤 버튼을 클릭했는지에 따라 GUI는 a 및 b 슬롯을 어느 기능으로도 방출합니다.
궁극적으로 1) 매개 변수 a 및 b를 사용하여 데이터를 추출하고 2) 회귀 또는 산포 음모 또는 둘 다 사용자가 줄 명령을 받았다. 당신이
안녕 Roelant는 답변 주셔서 감사합니다. 필자가 작성한 시퀀스를 실행하려고 시도했지만 오류가 발생했습니다. pdf.DataFrame과 같이 2 개의 데이터 프레임 df_X, df_Y를 정의하더라도 회귀 또는 ScatterPlot 함수 중 하나로 전달하지 않는 것 같습니다. – MatNaomi