Python pandas DataFrame操作
1. 从字典创建Dataframe
>>> import pandas as pd
>>> dict1 = {'col1':[1,2,5,7],'col2':['a','b','c','d']}
>>> df = pd.DataFrame(dict1)
>>> df
col1 col2
0 1 a
1 2 b
2 5 c
3 7 d
2. 从列表创建Dataframe (先把列表转化为字典,再把字典转化为DataFrame)
>>> lista = [1,2,5,7]
>>> listb = ['a','b','c','d']
>>> df = pd.DataFrame({'col1':lista,'col2':listb})
>>> df
col1 col2
0 1 a
1 2 b
2 5 c
3 7 d
3. 从列表创建DataFrame,指定data和columns
>>> a = ['','zhangsan','M']
>>> b = ['','lisi','F']
>>> c = ['','wangwu','M']
>>> df = pandas.DataFrame(data=[a,b,c],columns=['id','name','sex'])
>>> df
id name sex
0 001 zhangsan M
1 002 lisi F
2 003 wangwu M
4. 修改列名,从['id','name','sex']修改为['Id','Name','Sex']
>>> df.columns = ['Id','Name','Sex']
>>> df
Id Name Sex
0 001 zhangsan M
1 002 lisi F
2 003 wangwu M
5. 调整DataFrame列顺序、调整列编号从1开始
http://www.cnblogs.com/huahuayu/p/8324755.html
6. DataFrame随机生成10行4列int型数据
>>> import pandas
>>> import numpy
>>> df = pandas.DataFrame(numpy.random.randint(0,100,size=(10, 4)), columns=list('ABCD')) # 0,100指定随机数为0到100之间(包括0,不包括100),size = (10,4)指定数据为10行4列,column指定列名
>>> df
A B C D
0 67 28 37 66
1 21 27 43 37
2 73 54 98 85
3 40 78 4 93
4 99 60 63 16
5 48 46 24 61
6 59 52 62 28
7 20 74 36 64
8 14 13 46 60
9 18 44 70 36
7. 用时间序列做index名
>>> df # 原本index为自动生成的0~9
A B C D
0 31 25 45 67
1 62 12 61 88
2 79 36 20 97
3 26 57 50 44
4 24 12 50 1
5 4 61 99 62
6 40 47 52 27
7 83 66 71 4
8 58 59 25 62
9 38 81 60 8
>>> import pandas
>>> dates = pandas.date_range('',periods=10)
>>> dates # 从20180121开始,共10天
DatetimeIndex(['2018-01-21', '2018-01-22', '2018-01-23', '2018-01-24',
'2018-01-25', '2018-01-26', '2018-01-27', '2018-01-28',
'2018-01-29', '2018-01-30'],
dtype='datetime64[ns]', freq='D')
>>> df.index = dates # 将dates赋值给index
>>> df
A B C D
2018-01-21 31 25 45 67
2018-01-22 62 12 61 88
2018-01-23 79 36 20 97
2018-01-24 26 57 50 44
2018-01-25 24 12 50 1
2018-01-26 4 61 99 62
2018-01-27 40 47 52 27
2018-01-28 83 66 71 4
2018-01-29 58 59 25 62
2018-01-30 38 81 60 8
8. dataframe 实现类SQL操作
pandas官方文档 Comparison with SQL
https://pandas.pydata.org/pandas-docs/stable/comparison_with_sql.html
【Python实战】Pandas:让你像写SQL一样做数据分析(一)
https://www.cnblogs.com/en-heng/category/778194.html
Python pandas DataFrame操作的更多相关文章
- python pandas dataframe 操作记录
从数据看select出数据后如何转换为dataframe df = DataFrame(cur.fetchall()) 如何更改列名,选取列,进行groupby操作 df.columns = ['me ...
- Python pandas.DataFrame调整列顺序及修改index名
1. 从字典创建DataFrame >>> import pandas >>> dict_a = {'],'mark_date':['2017-03-07','20 ...
- Python Pandas -- DataFrame
pandas.DataFrame class pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False) ...
- 数据清理,预处理 pandas dataframe 操作技巧 总结
dsoft2 = data1.loc[(data1['程'] == "轻") | (data1['程'] == "中")]设置x下标plt.xticks(np. ...
- python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix
先手工生出一个数据框吧 import numpy as np import pandas as pd df = pd.DataFrame(np.arange(0,60,2).reshape(10,3) ...
- python pandas dataframe to_sql方法error及其解决
今天遇到了一个问题,很是奇怪,自己也想了一个另类的方法将其解决了,现在将详细过程经过记录如下: 我在处理完一个dataframe之后,需要将其写回到数据库.这个dataframe比较大,共有53列,7 ...
- Pandas DataFrame操作
DataFrame的创建 >>> import pandas as pd >>> from pandas import DataFrame #define a di ...
- python pandas.DataFrame.append
1.使用append首先要注意的是,你要合并两个DataFrame的columns即列名是否是相同的,不相同的就会报错. 2.我们会发现DataFrame的列名是不能够重复的,而行名(index)是可 ...
- python pandas.DataFrame .loc,.iloc,.ix 用法
refer to: http://www.cnblogs.com/harvey888/p/6006200.html
随机推荐
- 转载关于Qsys的 指令总线 和 数据总线
1.关于Qsys的 指令总线 和 数据总线 连接的问题(data_master和instruction_master) 关于数据和指令端口的连接的疑问,这是初用Qsys的童鞋们很困惑的问题,之前使 ...
- Java Config 注解
java config是指基于java配置的spring.传统的Spring一般都是基本xml配置的,后来spring3.0新增了许多java config的注解,特别是spring boot,基本都 ...
- bzoj 1000 A+B Problem (And also my first experience of Emacs)
problem:https://www.lydsy.com/JudgeOnline/problem.php?id=1000 This is my first code under Emacs! #in ...
- UOJ #188 Sanrd —— min_25筛
题目:http://uoj.ac/problem/188 参考博客:https://www.cnblogs.com/cjoieryl/p/10149748.html 关键是枚举最小质因子...所以构造 ...
- SQL Server数据库优化经验总结
优化数据库的注意事项: 1.关键字段建立索引. 2.使用存储过程,它使SQL变得更加灵活和高效. 3.备份数据库和清除垃圾数据. 4.SQL语句语法的优化.(可以用Sybase的SQL Expert, ...
- android中状态栏透明
设置 Acitivity 所在 window 的属性 @Override protected void onCreate(Bundle savedInstanceState) { super.onCr ...
- BroadcastReceiver用法
动态注册广播接收器 1.创建一个Receiver继承BroadcastReceiver,并重写onReceiver() 2.在Activity的OnCreate()中添加广播接收器想要接收的actio ...
- 如果axios请求失败,如何获取后端接口返回的状态码及错误信息
这两天在工作中遇到一个问题,一个请求返回400错误,我需要向用户展示后端返回的错误信息,但是用普通的catch方法只能获取到浏览器返回的400错误提示,不能获取到后端返回的,后经查阅得出下面方法: a ...
- python开发模块基础:collections模块¶miko模块
一,collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdic ...
- 屏蔽sql server 2008的智能提示
1. 去掉这个勾 2. 如果你安装了Sql complete, 接着下面的