pandas数据读取(DataFrameSeries)1、pandas数据的读取
pandas需要先读取表格类型的数据,然后进⾏分析
数据说明说明
pandas读取⽅
法
csv、tsv、txt ⽤逗号分割、tab分割
的纯⽂本⽂件
excel微软xls或者xlsx⽂件pd.read_excel mysql关系向数据库表pd.read_sql
#本代码⽰例:
import pandas as pd #导⼊包
#1读取csv,使⽤默认的标题⾏、逗号分割
fpath = “要打开⽂件的路径”
ratings = pd.read_csv(fpath) #使⽤pd.read_csv读取数据ratings.head() #查看前⼏⾏(默认5⾏)
ratings.shape #查看数据的形状,返回(⾏数、列数)lumns # 查看列名列表
ratings.index #查看索引列
ratings.dtypes #查看每⼀列的数据类型
#1.2读取txt⽂件,⾃⼰制定分隔符、列名
fpath = “⽂件的路径”
pvuv = pd.read_csv(
fpath,
sep = “\t”, #l列的分隔符
header = None,
names = ['pdate','pv','uv']
)
print(pvuv)
#读取excel⽂件
fpath = “⽂件的路径”
pvuv = pd.read_excel(fpath)
print(pvuv)
#读取Mysql数据库
import pmysql
conn = t(
host = '127.0.0.1',
user = 'root',
password = '123456',
database = 'test',
charest = 'utf8'
)
mysql_page = pd.read_sql("select * from 表名",con=conn) print(mysql_page)
2、pandas数据结构(DataFrame & Series)DataFrame:⼆维数据,整个表格,多⾏多列df.columns 查询列
df.index 查询⾏
Series:⼀维数据,⼀⾏或者⼀列
#1、 Series
#2、DataFrame
#3、从DAtaFrame中查询出Series
import pandas as pd
import numpy as np
#series是⼀种类似于⼀维数组的对象,它由⼀组数据(不同数据类型)以及⼀组与之相关的数#据标签(即索引)组成。#1.1仅有数据列表即可产⽣最简单的series
s1 = pd.Series([1,'a',5.2,6])
# print(s1) #左侧为索引,右侧为数据
print(s1.index) #获取索引结果:RangeIndex(start=0, stop=4, step=1)
print(s1.values) #获取数据结果:[1 'a' 5.2 6]
#1.2 创建⼀个具有标签索引的Series
s2 = pd.Series([1,'a',5.2,6],index = ['d','b','a','c'])
print(s2)
print(s2.index) #Index(['d', 'b', 'a', 'c'], dtype='object')
#1.3 使⽤python字典创建Series
sdata = {'ohio':3500,'Texas':72000,'Oregs':16000,'Ggrqg':5000}
s3 = pd.Series(sdata)
print(s3)
#1.4 根据标签索引查询数据(类似python的字典dict)
print(s2['a'])#5.2
print(type(s2['a']))#<class 'float'>
print(s2[['b','a']])
#2 DataFrame
# DataFrame是⼀个表格型的数据结构
# 每⼀列可以是不同的值类型(数值、字符串、布尔值)
# 既有⾏索引index,也有列索引columns
# 可以被看由Series组成的字典
#2.1根据多个字典序列创建dataframe
data = {
'state':['ofjg','sdfg','werw','wrgwer','rgwg'],
'year':[2000,3000,5000,6000,9000],
'pop':[1.5,1.7,1.6,5.3,3.5]
}
df = pd.DataFrame(data)
print(df)
#3.从DataFrame中查询Series
# 如果只查询⼀列,返回的是pd.Series
# 如果查询多⾏、多列,返回的是pd.DataFrame
python怎么读取excel文件数据# 3.1 查询⼀列结果是⼀个pd.Series
print(df['year'])
print(type(df['year']))#<class 'series.Series'>
# 3.2 查询多列,结果是⼀个pd.DataFrame
print(df[['year','pop']])
print(type(df[['year','pop']]))#<class 'frame.DataFrame'>
# 3.3 查询⼀⾏,结果是⼀个pd.Series
print(df.loc[1])
print(type(df.loc[1]))#<class 'series.Series'>
# 3.4 查询多⾏,结果是⼀个pd.DataFrame
print(df.loc[1:3])
print(type(df.loc[1:3]))#<class 'frame.DataFrame'>
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论