python pandas读取数据库表(Python3.5 Pandas模块之DataFrame用法实例分析)
python pandas读取数据库表
Python3.5 Pandas模块之DataFrame用法实例分析本文实例讲述了python3.5 pandas模块之dataframe用法。分享给大家供大家参考,具体如下:
1、dataframe的创建
(1)通过二维数组方式创建
|
#!/usr/bin/env python # -*- coding:utf-8 -*- # author:zhengzhengliu import numpy as np import pandas as pd from pandas import series,dataframe #1.dataframe通过二维数组创建 print ( "======dataframe直接通过二维数组创建======" ) d1 = dataframe([[ "a" , "b" , "c" , "d" ],[ 1 , 2 , 3 , 4 ]]) print (d1) print ( "======dataframe借助array二维数组创建======" ) arr = np.array([ [ "jack" , 78 ], [ "lili" , 86 ], [ "amy" , 97 ], [ "tom" , 100 ] ]) d2 = dataframe(arr,index = [ "01" , "02" , "03" , "04" ],columns = [ "姓名" , "成绩" ]) print (d2) print ( "========打印行索引========" ) print (d2.index) print ( "========打印列索引========" ) print (d2.columns) print ( "========打印值========" ) print (d2.values) |
运行结果:
======dataframe直接通过二维数组创建======
0 1 2 3
0 a b c d
1 1 2 3 4
======dataframe借助array二维数组创建======
姓名 成绩
01 jack 78
02 lili 86
03 amy 97
04 tom 100
========打印行索引========
index(['01', '02', '03', '04'], dtype='object')
========打印列索引========
index(['姓名', '成绩'], dtype='object')
========打印值========
[['jack' '78']
['lili' '86']
['amy' '97']
['tom' '100']]
(2)通过字典方式创建
|
#2.dataframe通过字典创建,键作为列索引,键值作为数据值,行索引值自动生成 data = { "apart" :[ '1101' , "1102" , "1103" , "1104" ], "profit" :[ 2000 , 4000 , 5000 , 3500 ], "month" : 8 } d3 = dataframe(data) print (d3) print ( "========行索引========" ) print (d3.index) print ( "========列索引========" ) print (d3.columns) print ( "========数据值========" ) print (d3.values) |
运行结果:
apart month profit
0 1101 8 2000
1 1102 8 4000
2 1103 8 5000
3 1104 8 3500
========行索引========
rangeindex(start=0, stop=4, step=1)
========列索引========
index(['apart', 'month', 'profit'], dtype='object')
========数据值========
[['1101' 8 2000]
['1102' 8 4000]
['1103' 8 5000]
['1104' 8 3500]]
2、dataframe数据获取
|
import numpy as np import pandas as pd from pandas import series,dataframe #3.dataframe获取数据 data = { "apart" :[ '1101' , "1102" , "1103" , "1104" ], "profit" :[ 2000 , 4000 , 5000 , 3500 ], "month" : 8 } d3 = dataframe(data) print (d3) print ( "======获取一列数据======" ) print (d3[ "apart" ]) print ( "======获取一行数据======" ) print (d3.ix[ 1 ]) print ( "======修改数据值======" ) d3[ "month" ] = [ 7 , 8 , 9 , 10 ] #修改值 d3[ "year" ] = [ 2001 , 2001 , 2003 , 2004 ] #新增列 d3.ix[ "4" ] = np.nan print (d3) |
运行结果:
apart month profit
0 1101 8 2000
1 1102 8 4000
2 1103 8 5000
3 1104 8 3500
======获取一列数据======
0 1101
1 1102
2 1103
3 1104
name: apart, dtype: object
======获取一行数据======
apart 1102
month 8
profit 4000
name: 1, dtype: object
======修改数据值======
apart month profit year
0 1101 7.0 2000.0 2001.0
1 1102 8.0 4000.0 2001.0
2 1103 9.0 5000.0 2003.0
3 1104 10.0 3500.0 2004.0
4 nan nan nan nan
3、pandas基本功能
(1)pandas数据文件读取
|
import numpy as np import pandas as pd from pandas import series,dataframe #pandas基本操作 #1.数据文件读取 df = pd.read_csv( "data.csv" ) print (df) |
运行结果:
name age source
0 gerry 18 98.5
1 tom 21 78.2
2 lili 24 98.5
3 john 20 89.2
(2)数据过滤获取
|
import numpy as np import pandas as pd from pandas import series,dataframe #pandas基本操作 #1.数据文件读取 df = pd.read_csv( "data.csv" ) print (df) #2.数据过滤获取 columns = [ "姓名" , "年龄" , "成绩" ] df.columns = columns #更改列索引 print ( "=======更改列索引========" ) print (df) #获取几列的值 df1 = df[columns[ 1 :]] print ( "=======获取几列的值========" ) print (df1) print ( "=======获取几行的值========" ) print (df.ix[ 1 : 3 ]) #删除含有nan值的行 df2 = df1.dropna() print ( "=======删除含有nan值的行=======" ) print (df2) |
运行结果:
name age source
0 gerry 18 98.5
1 tom 21 nan
2 lili 24 98.5
3 john 20 89.2
=======更改列索引========
姓名 年龄 成绩
0 gerry 18 98.5
1 tom 21 nan
2 lili 24 98.5
3 john 20 89.2
=======获取几列的值========
年龄 成绩
0 18 98.5
1 21 nan
2 24 98.5
3 20 89.2
=======获取几行的值========
姓名 年龄 成绩
1 tom 21 nan
2 lili 24 98.5
3 john 20 89.2
=======删除含有nan值的行=======
年龄 成绩
0 18 98.5
2 24 98.5
3 20 89.2
希望本文所述对大家python程序设计有所帮助。
原文链接:https://blog.csdn.net/loveliuzz/article/details/78498094
- python怎么提取微信数据(使用Python+wxpy 找出微信里把你删除的好友实例)
- linux切换python版本(linux安装python修改默认python版本方法)
- opencv调用摄像头图像识别(Python+OpenCV采集本地摄像头的视频)
- python异常信息处理(Python使用修饰器进行异常日志记录操作示例)
- python的静态方法和类方法(深入解析python中的实例方法、类方法和静态方法)
- python基础编程函数参数(详解Python 函数如何重载?)
- python操作sql server数据库(Python 数据库操作 SQLAlchemy的示例代码)
- zabbix sender能否发送告警数据(python3实现zabbix告警推送钉钉的示例)
- python的pickle用法(Python multiprocess pool模块报错pickling error问题解决方法分析)
- 最简单python的100个代码(20条非常实用的Python代码实例)
- pythonshell入门教程(python获取交互式ssh shell的方法)
- python 常用模块函数(Python OOP类中的几种函数或方法总结)
- python 正则表达式在代码里的使用(python中正则表达式与模式匹配)
- python彩色字符视频代码(python将视频转换为全字符视频)
- python处理各种xml文件(Python使用sax模块解析XML文件示例)
- python编写自动发送微信信息(python实现向微信用户发送每日一句 python实现微信聊天机器人)
- ()
- ()
- 800壮士拼死拖住30万日军 八佰 的真实历史,誓与阵地共存亡(800壮士拼死拖住30万日军)
- 演员陈创,火于 哮天犬 ,颠峰于 福贵 ,现状却令人唏嘘(演员陈创火于哮天犬)
- 幼小衔接-20以内看图读数 写数 数的组成练习题(幼小衔接-20以内看图读数)
- 你只要花上20天记单词,英语成绩就能从57提到100(你只要花上20天记单词)
热门推荐
- 如何用mysql建立图书管理系统(图书管理系统的sqlserver数据库设计示例)
- MYSQL字符集设置的方法详解(终端的字符集)(MYSQL字符集设置的方法详解终端的字符集)
- php解读三重境界(PHP 观察者模式深入理解与应用分析)
- 搭建nuget服务器
- dedecms中的有些功能如何修改(DedeCms参考手册、函数及文件大全)
- js中this的用法
- 宝塔面板程序目录(将宝塔面板linux版装在/www以外的目录的方法)
- 腾讯云服务器控制台搭建(手把手教你搭建腾讯云服务器入门图文教程)
- thinkphp5框架怎么打开(thinkphp5.1框架模板布局与模板继承用法分析)
- sql server清理日志(SQL Server 2008 清空删除日志文件瞬间缩小日志到几M)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9