Pandas从入门到实战(day1)

Pandas

数据的读取

数据类型pandas读取方法
csv,tsv,txxtpd.read_csv
excelpd.read_excel
mysqlpd.read_sql

读取csv文件

import pandas as pd
fpath = "../lable/test.csv"
# 使用pandas读取csv
data = pd.read_csv(fpath)
# 读取数据的前几行
print(data.head())
# 返回形状 - 行数、列数
print(data.shape)
# 查看列名
print(data.columns)
# 查看索引
print(data.index)
# 查看每列的数据类型
print(data.dtypes)

读取txt文件

tfile = "./a.txt"
tdata = pd.read_csv(
tfile, sep=",", header=None, names=['data1','data2','data3'])
print(tdata)

tdata = pd.read_csv([文件路径], sep=[分隔符], header=[是否有头None], names=[每一列的标识])
如果已经存在了表头,header和names不需要写,自动把第一行作为表头

读取excel文件

efile = "./a,xlsx"
edata = pd.read_excel(efile)
print(edata)

读取sql

如果没有pymysql需要自己装pip install pymysql

import pymysql
conn = pymysql.connect(host='127.0.0.1', user='root', password='2001', database='db',charset='utf8')
sql = pd.read_sql("select * from goods", con=conn)
print(sql)

Pandas数据结构(DataFrame&Seires)

DataFrame:二维数据,整个表格,多行多列
Seires:一维数据,一行或者一列

Seires

Seires:类似于一维数组的对象,由一组数据(不同类型)以及一组与之相关的标签即索引组成

创建Seires

  • 仅有数据列表可以产生Seires
datas = pd.Series([1, 2, 'a', 5, 'ads'])
# 左侧是索引,右侧是数据
print(datas)
# 获取索引
print(datas.index)
# 获取数据
print(datas.values)

在这里插入图片描述

  • 创建一个带索引标签的Series
datas = pd.Series([1, 2, 'a', 5, 'ads'], 
                  index=['11', '12', '13', '14', '15'])
print(datas)
print(datas.index)
  • 使用python字典创建Series
sdata = {'a': 1, 'b': 2, 'c': 3}
sdata = pd.Series(sdata)
print(sdata)
  • 依据索引查询值
    print(sdata['a'])

DataFrame

  • DataFrame是一个表格型的数据结构
    • 每列可以是不同的值类型(数值、字符串、布尔值等)
    • 既有行索引lindex,也有列索引columns
    • 可以被看做由Series组成的字典创

创建 DataFrame

  • 根据多个字典序列创建DataFrame
dataf = {
    'style': ['red', 'yellow'],
    'year': ['12', '13'],
    'price': ['12', '15']
}
df = pd.DataFrame(dataf)
print(df)

在这里插入图片描述

print(df.columns) # 列索引
print(df.dtypes) # 数据类型
print(df.index) # 行索引

在这里插入图片描述

从DataFrame查询出Seires

  • 查询一列、一行----返回的是pd.seiires
  • 查询多行、多列----返回的是pd.DataFrame

取出一列/多列

import pandas as pd
dataf = {
    'style': ['red', 'yellow'],
    'year': ['12', '13'],
    'price': ['12', '15']
}
df = pd.DataFrame(dataf)
print(type(df[['style', 'year']]))
print(df[['style', 'year']])
print(type(df['style']))
print(df['style'])

在这里插入图片描述

取出一行/多行

print(df.loc[1])
print(type(df.loc[1]))
print(df.loc[0:1])
print(type(df.loc[0:1]))
F:\Anaconda3\python.exe
style    yellow
year         13
price        15
Name: 1, dtype: object
<class 'pandas.core.series.Series'>
    style year price
0     red   12    12
1  yellow   13    15
<class 'pandas.core.frame.DataFrame'>
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

啊~小 l i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值