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

posted @ 2022-02-11 17:57  Jude~  阅读(130)  评论(0编辑  收藏  举报