栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python pandas dataframe_pandas series变成dataframe?

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python pandas dataframe_pandas series变成dataframe?

1.读取文件和数据属性的基本查看方法
数据类型读取方法
csv,tsv,txtpd.read_csv(filepath)
excelpd.read_excel(filepath)
mysqlpd.read_sql(filepath)

注意,读取mysql时,要先进行sql连接

import pymysql 
conn = pymysql.connect(
	host="127.0.0.1"
	user="root"
	password="123456"
	database="data_info"
	charset="utf8"
	)
mysql_info=pd.read_sql("select * from information",con=conn)

其他一些查看表属性的基本操作

improt pandas as pd
filepath="./information.txt"
info = pd.read_csv(filepath,sep=",",header=None,names=["column_A","column_B","column_C"],skiprows=2) 
#第二个参数表示文件中的数据以什么形式进行分割,第三个参数表示文件有无标题行,第四个参数表示对文件的每一列的属性进行命名,最后一个参数表示跳过前两行数据不进行处理
info.head() #读取前几行数据
info.shape #用元祖返回数据的行数和列数
info.columns #查看列索引
info.index #查看行索引

2.Dataframe和Series


如上图,一整张表就是一个Dataframe,即Dataframe是一个二维数组。PV一整列就称为是一个Series,2019/9/3的一整行数据也称为一个Series,即Series是一个一维数组。

一.Series

(1)创建Series

# 使用一个列表生成一个Series
s1 = pd.Series([1, 2, 3, 4])
# 使用数组生成一个Series
s2  = pd.Series(np.arange(7))
# 使用一个字典生成Series,其中字典的键,就是索引
s3 = pd.Series({'one':1, 'two':2, 'three':3})

(2)Series的常用操作

例如s3是上面的一组Series数据,其中第一列表示索引,第二列是数据值

"""方式二(推荐)"""
s3.loc["java"] #输出61
s3.loc["c","python"] #输出61,62
s3.loc[0] #索引方式,输出第1个元素62
s3.loc["php":"h5"] #切片方式,输出86,65,93
二.Dataframe

(1)创建Dataframe

#用字典嵌套列表来创建
fruits_dict = { 'Fruits':['Apple','Banana','Cherry','Dates','Eggfruit'],
                'Quantity': [5, 10, 8, 3, 7],  
               }
#用列表来创建
pd.Dataframe(data=[['Apple',5],
                   ['Banana',10],
                   ['Cherry',8],
                   ['Dates',3],
                   ['Eggfruit',7]],
             columns = ['Fruits','Quantity'],
             index=[1,2,3,4,5])

结果:

(2)设置索引

例如s3是上面的一个文件数据,行默认是按照0-4进行索引,若要设置成按照ymd属性的值进行索引,表示如下:

info.set_index("ymd",inplace=True)

(3)替换操作

#替换bWendu和yWendu的后缀的摄氏度
s3.loc[:,"bWendu"] = s3["bWendu"].str.replace("℃","").astype("int32") #注意一定要先转换成字符串进行操作,最后再转换成int32类型
s3.loc[:,"yWendu"] = s3["yWendu"].str.replace("℃","").astype("int32")

处理后结果:

(3)常用操作

#得到单个值
s3.loc["2018-01-03","bWendu"] #逗号前为行索引,逗号后为列索引
#得到一个Series
s3.loc["2018-01-03",["bWendu","yWendu"]]
#得到一个Series
s3.loc[["2018-01-03","2018-01-04"],"bWendu"]
#得到一个Dataframe
s3.loc[["2018-01-03","2018-01-05"],["bWendu","yWendu"] 

#简单条件查询
s3.loc[s3["yWendu"]<10,:] #选中的行是所有行中yWendu<10的行,选中的列为所有列
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/783422.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号