python數(shù)據(jù)獲取-從數(shù)據(jù)庫獲取因變量數(shù)據(jù)并進行數(shù)據(jù)匯總統(tǒng)計描述

##從數(shù)據(jù)庫獲取數(shù)據(jù)并進行數(shù)據(jù)匯總統(tǒng)計描述##

import MySQLdb #調(diào)用連接sql數(shù)據(jù)的模塊

from pandas import DataFrame

##連接數(shù)據(jù)庫,需要知道主機地址、賬號、密碼、庫名、端口、編碼模式

conn =

MySQLdb.connect(host='XXXX',user='XXXX',passwd='XXXX',db='XXXX',port=XXXX,charset='utf8')

#使用cursor()方法獲取操作游標(biāo)

con = conn.cursor()

##撰寫查詢語句

select_sql = '''SELECT a.USER_ID,sum(

case when a.CLEAR_DATE is null then

if(TIMESTAMPDIFF(day,date(a.INTEREST_DATE),date(now()))<180,TIMESTAMPDIFF(day,date(a.INTEREST_DATE),date(now())),180)

*a.INVEST_AMOUNT#如果180內(nèi)進行了清算或者轉(zhuǎn)讓則以時間差作為持有時間,否則以180天作為持有時間

when a.CLEAR_DATE is not null then

if(TIMESTAMPDIFF(day,date(a.INTEREST_DATE),date(CLEAR_DATE))<180,TIMESTAMPDIFF(day,date(a.INTEREST_DATE),date(CLEAR_DATE)),180)

*a.INVEST_AMOUNT end)*1.8/36500 as投資貢獻度

from dm_tbl_investsplitinfo?a,dm_tbl_userinfo b

where a.USER_ID=b.USER_ID

and INTEREST_DATE is not null #排除募集中的記錄

and

TIMESTAMPDIFF(day,date(b.FIRST_INVEST_TIME),date(now()))>=180#只要首投時間在半年以前的用戶,防止新增投資用戶造成的影響

and

TIMESTAMPDIFF(day,date(b.FIRST_INVEST_TIME),date(a.INVEST_DATE))<=180#限制投資時間在首投之后的180天內(nèi)

and b.HUIYUAN_TYPE in ('個人會員','羊毛黨')

and USER_STATE='正常'#限制為正常狀態(tài)用戶,非凍結(jié)

GROUP BY a.USER_ID;'''

#使用execute方法執(zhí)行SQL語句,相當(dāng)于給sql寫一個分號

con.execute(select_sql)

##用fetchall接受所有結(jié)果數(shù)據(jù),注意fetchall獲取的數(shù)據(jù)均為tuple型,需要進一步處理才行

temp_data = con.fetchall()

#提交到數(shù)據(jù)庫,執(zhí)行所有sql語句

conn.commit()

#關(guān)閉數(shù)據(jù)庫鏈接

conn.close()

data =

DataFrame(list(temp_data),columns=['user_id','contributions'])

#將DF的decimal類型轉(zhuǎn)化為float型,以便統(tǒng)計分析數(shù)據(jù)

data['contributions'] =?data['contributions'].astype('float')

###利用pandas的DF匯總統(tǒng)計描述數(shù)據(jù)特征

print(data['contributions'].describe())

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容