pandas DataFrame 選取數據
import numpy as np
import pandas as pd
from conf.conf import engineconnect
sql = """select id,action,uid,time from `*****`"""
df = pd.read_sql(sql, engineconnect().connect())
df = df.astype({"uid": np.int64, 'id': np.int64})
# print(df)
'''
id action uid time
0 1 user-login 13026 2018-09-11 09:46:47
1 2 user-login 13025 2018-09-11 09:46:43
2 3 user-login 13027 2018-09-11 09:47:16
3 4 user-login 13028 2018-09-11 09:48:16
4 5 user-login 13029 2018-09-11 09:48:54
5 6 user-login 13030 2018-09-11 09:49:58
6 7 user-play-vod 13031 2018-09-11 09:50:36
7 8 user-login 13031 2018-09-11 09:50:
'''
print(df['uid']) #使用類字典屬性,返回的是Series類
print(type(df['uid'])) #<class 'pandas.core.series.Series'>
print(df.uid) # 使用點屬性,返回的是Series類型
print(df[['uid','time']])
print(type(df[['uid','time']]) ) #<class 'pandas.core.frame.DataFrame'>
print(df[0:3]) #返回第1行到第3行的所有行,前閉后
print(df[1:2]) #前閉后開
print(df.ix[0:2]) #都bi
df.head(10)
df.head(40)
print(df.iloc[-1]) #選取dfFrame最后一行,返回的是Series
print(type(df.iloc[-1])) #<class 'pandas.core.series.Series'>
print(df.iloc[-1:] ) #選取最后一行,返回的是dfFrame
#
print(df.iat[1,1] ) #選取第二行第二列,用于已知行、列位置的選取。
print(df.ix[1:2,2:4]) #選擇第2-3行,3-5(不包括5)列的值
print(df.ix[:,2:4])
print(type(df.ix[1:2,2:4]) ) #<class 'pandas.core.frame.DataFrame'>
print("*"*33)
df[-1:] #最后一行 <class 'pandas.core.frame.DataFrame'>
print("*"*33)
print(df.ix[df.uid>13046,:]) #
'''
id action uid time
48 49 user-registry 13047 2018-09-11 10:52:59
49 50 user-login 13047 2018-09-11 10:52:59
51 52 user-registry 13048 2018-09-11 10:54:19
52 53 user-login 13048 2018-09-11 10:54:19
53 54 user-registry 13049 2018-09-11 10:55:24
54 55 user-login 13049 2018-09-11 1
'''
print("*"*33)
————————————————
版權聲明:本文為CSDN博主「NoOne-csdn」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/weixin_40161254/article/details/83545399

浙公網安備 33010602011771號