python数据集
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python数据集相关的知识,希望对你有一定的参考价值。
参考技术A python数据集===
列表
创建列表
a = [23, 45, 1, -3434, 43624356, 234]
查询列表
切片
增加
修改
删除
循环
排序
===
元组
元组是由数个逗号分割的值组成
a = 'Fedora', 'catkin', 'Kubuntu', 'Pardus'
===字符串
字符串是一个有序的字符集合,用于存储和表示基本的文本信息,用单引号,或双引号,或三引号括起来
===字典
字典是一种key---value的数据类型,使用就像我们使用字典,通过拼音或笔画查找字的详细类容
字典是是无序的键值对(key:value)集合,同一个字典内的键必须是互不相同的。一对大括号 创建一个空字典。初始化字典时,在大括号内放置一组逗号分隔的键:值对,这也是字典输出的方式。我们使用键来检索存储在字典中的数据。
data = 'kushal':'Fedora', 'kart_':'Debian', 'Jace':'Mac'
===集合
集合是一个无序的,不重复的数据组合,
集合是一个无序不重复元素的集。基本功能包括关系测试和消除重复元素。集合对象还支持 union(联合),intersection(交),difference(差)和 symmetric difference(对称差集)等数学运算。
作用:
去重,把一个列表当成集合,就自动去重了
关系测试,测试两组数据之间的交集,差集,并集等关系
Python订单数据集天气
我有一个城市温度/天气的数据集历史记录,如下所示:
{"city": "Barcelona", "date": "2016-10-16", "temperature": "13", "weather": "cloudy"}
{"city": "Berlin", "date": "2016-10-16", "temperature": "-1", "weather": "sunny"}
{"city": "Pekin", "date": "2016-10-16", "temperature": "19", "weather": "cloudy"}
{"city": "Paris", "date": "2016-10-16", "temperature": "-8", "weather": "sunny"}
并且我想创建一个前5名,按最佳平均温度排序。在这个结果我想知道天气类型的天数(晴天阴天多雨)
例:
Rank - City - Average Temperature - Cloudy days - Sunny days - Rainy Days
1 - Barcelona - 20 - 93 - 298 - 29
如何在Python中执行此操作?
谢谢
马特
答案
我相信你需要pandas:
- 来自
read_json
的DataFrame
的第一个json
- 通过
groupby
获得前5个城市,总计mean
和nlargest
- 过滤器由
boolean indexing
- 由
count
s汇总,由unstack
重塑 reindex
由index
的s
正确排序insert
用map
添加新列- 最后用
range
添加排名
import pandas as pd
import pandas as pd
df = pd.read_json('a.json', lines=True)
print (df)
city date temperature weather
0 Barcelona 2016-10-16 13 cloudy
1 Berlin 2016-10-16 -1 sunny
2 Pekin 2016-10-16 19 cloudy
3 Paris 2016-10-16 -8 sunny
s = df.groupby(['city'])['temperature'].mean().nlargest(5)
print (s)
city
Pekin 19
Barcelona 13
Berlin -1
Paris -8
Name: temperature, dtype: int64
df2 = (df[df['city'].isin(s.index)]
.groupby(['city', 'weather'])['temperature']
.size()
.unstack(fill_value=0)
.add_suffix(' days')
.reindex(s.index)
.reset_index()
.rename_axis(None, axis=1))
df2.insert(1, 'temp avg', df2['city'].map(s))
df2.insert(0, 'rank', range(1, len(df2) + 1))
print (df2)
rank city temp avg cloudy days sunny days
0 1 Pekin 19 1 0
1 2 Barcelona 13 1 0
2 3 Berlin -1 0 1
3 4 Paris -8 0 1
以上是关于python数据集的主要内容,如果未能解决你的问题,请参考以下文章