Pandas 基础(3) - 生成 Dataframe 的几种方式
这一节想总结一下 生成 Dataframe 的几种方式:
- CSV
- Excel
- python dictionary
- List of tuples
- List of dictionary
下面分别一一介绍具体的实现方式:
- 通过 csv 文件
这里补充一个知识点, 就是如果要读取的文件不在 jupyter 所在的文件夹, 则可以通过绝对路径的方式引入.
df = pd.read_csv("/Users/rachel/Downloads/weather.csv")
- 通过 Excel 文件
这里的第二个参数是必填项, 因为要指明具体读取 excel 表中的哪个 sheet.
df = pd.read_excel("/Users/rachel/Downloads/weather.xlsx", "weather")
还有一个小坑, 就是在初次运行的时候有可能会提示错误, 根据错误提示, 大概可以了解到, 要读取 excel 文件, 还需要一个 xlrd 的包, 在终端运行下面命令就好了
pip3 install xlrd
- 通过 python dictionary (为了方便大家日后可以更好地理解英文文档, 这里的一些专业名词, 我就都不翻译了)
weather_data = {
'day': ['1/1/2017','1/2/2017','1/3/2017'],
'temperature': [32,35,28],
'windspeed': [6,7,2],
'event': ['Rain', 'Sunny', 'Snow']
}
df = pd.DataFrame(weather_data)
- 通过 List of tuples
weather_data = [
('1/1/2017',32,6,'Rain'),
('1/2/2017',35,7,'Sunny'),
('1/3/2017',28,2,'Snow')
]
df = pd.DataFrame(data=weather_data, columns=['day','temperature','windspeed','event'])
上面例子中, weather_data 的数据结构是一个 list(特点是中括号), list 中的每一个元素就是一个 tuple, 由于原数据没有指明列名, 所以在创建 dataframe 的时候, 需要指明列名.
- 通过 List of dictionary, 从名字就可以读出来下面的数据结构是一个 list, list 中的每个元素又是一个 dictionary.
weather_data = [
{'day': '1/1/2017', 'temperature': 32, 'windspeed': 6, 'event': 'Rain'},
{'day': '1/2/2017', 'temperature': 35, 'windspeed': 7, 'event': 'Sunny'},
{'day': '1/3/2017', 'temperature': 28, 'windspeed': 2, 'event': 'Snow'},
]
df = pd.DataFrame(data=weather_data, columns=['day','temperature','windspeed','event'])
上面简要介绍了 5 中生成 dataframe 的方式, 其实 Pandas 还支持很多种文件格式的输入输出, 具体可以参考下官方文档 https://pandas.pydata.org/pandas-docs/version/0.22/io.html
有任何问题或意见, 欢迎留言交流哦~~~
Pandas 基础(3) - 生成 Dataframe 的几种方式的更多相关文章
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
- 【Spark篇】---SparkSQL初始和创建DataFrame的几种方式
一.前述 1.SparkSQL介绍 Hive是Shark的前身,Shark是SparkSQL的前身,SparkSQL产生的根本原因是其完全脱离了Hive的限制. SparkSQL支持查询原 ...
- Spark SQL初始化和创建DataFrame的几种方式
一.前述 1.SparkSQL介绍 Hive是Shark的前身,Shark是SparkSQL的前身,SparkSQL产生的根本原因是其完全脱离了Hive的限制. SparkSQL支持查询原 ...
- JAVA SparkSQL初始和创建DataFrame的几种方式
建议参考SparkSQL官方文档:http://spark.apache.org/docs/latest/sql-programming-guide.html 一.前述 1.SparkSQ ...
- python 全栈开发,Day94(Promise,箭头函数,Django REST framework,生成json数据三种方式,serializers,Postman使用,外部python脚本调用django)
昨日内容回顾 1. 内容回顾 1. VueX VueX分三部分 1. state 2. mutations 3. actions 存放数据 修改数据的唯一方式 异步操作 修改state中数据的步骤: ...
- sparkSQL获取DataFrame的几种方式
sparkSQL获取DataFrame的几种方式 1. on a specific DataFrame. import org.apache.spark.sql.Column df("col ...
- 数据可视化之powerBI技巧(七)从Excel到PowerBI,生成笛卡尔积的几种方式
假如分别有100个不重复的姓和名,把每个姓和名进行组合匹配,就可以得到一万个不重复的姓名组合,这种完全匹配的方式就是生成一个姓名的笛卡尔积. 下面就来看看生成笛卡尔积的几种方式,为了展现的方便,以5个 ...
- spring生成EntityManagerFactory的三种方式
spring生成EntityManagerFactory的三种方式 1.LocalEntityManagerFactoryBean只是简单环境中使用.它使用JPA PersistenceProvide ...
- 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作
一.reindex() 方法:重新索引 针对 Series 重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...
随机推荐
- ECharts + Jquery 做大屏展示
HTML <!doctype html> <html> <head> <meta charset="utf-8"> <meta ...
- ucos ii 46个系统API函数解析
源: ucos ii 46个系统API函数解析
- mysql 查询重复值
SELECT `code`,count(`code`) as count FROM `yt_coupon` GROUP BY `code` HAVING count(`code`) > ...
- sqlchemy self made
# -*- coding: utf-8 -*- from sqlalchemy import create_engine, Column, String, Integer, ForeignKey, T ...
- 常用MarkDown标记
1:加粗 两个*号 加粗 2:代码段 三个` 代码段
- encodeURI、encodeURIComponent
encodeURI是对整个uri进行编码的,而encodeURIComponent是对uri中部分内容进行编码. 在进行url的字符串拼接时,需要进行两次encodeURI. 只进行一次encodeU ...
- netty集成ssl完整参考指南(含完整源码)
虽然我们在内部rpc通信中使用的是基于认证和报文头加密的方式实现安全性,但是有些时候仍然需要使用SSL加密,可能是因为对接的三方系统需要,也可能是由于open的考虑.中午特地测了下netty下集成ss ...
- cscope for golang
从 https://gist.github.com/bopjiang/11146574 下载, 做了修改. cscope-go.sh #!/bin/bash # generate cscope ind ...
- ARM的栈指令(转)
ARM的指令系统中关于栈指令的内容比较容易引起迷惑,这是因为准确描述一个栈的特点需要两个参数: 栈地址的增长方向:ARM将向高地址增长的栈称为递增栈(Descendent Stack),将向低地址增长 ...
- 【4opencv】求解向量和轮廓的交点
在“学习OpenCV3"的QQ群众,网友且行且珍惜针对前期博客(https://www.cnblogs.com/jsxyhelu/p/9345590.html)中的内容提出了以下问题: 比如 ...