当前位置: 首页 > wzjs >正文

沈阳做网站的公司排行百度竞价被点击软件盯上

沈阳做网站的公司排行,百度竞价被点击软件盯上,网站如何做子域名,个人微信公共号可以做微网站么DataFrame对象 文章目录 DataFrame对象导入本文需要的包DataFrame与Series的相似之处使用read_csv函数导入DataFrameSeries和DataFrame的共享与专有属性Series和DataFrame的共有方法 对DataFrame进行排序按照单列进行排序按照多列进行排序按照索引进行排序对列索引进行排序 设置…

DataFrame对象

文章目录

  • DataFrame对象
      • 导入本文需要的包
      • DataFrame与Series的相似之处
        • 使用`read_csv`函数导入DataFrame
        • Series和DataFrame的共享与专有属性
        • Series和DataFrame的共有方法
      • 对DataFrame进行排序
        • 按照单列进行排序
        • 按照多列进行排序
        • 按照索引进行排序
        • 对列索引进行排序
      • 设置索引
      • 从DataFrame中选择列
        • 从DataFrame中选择单列
        • 从DataFrame中选择多列
      • 从DataFrame中选择行
        • 使用索引标签提取行
        • 按索引位置提取行
        • 从特征列中提取特征值
      • 对行或列进行重命名
      • 重置索引
      • 代码挑战
        • 解决方案

DataFrame是具有行和列的二维数据表,相比于Series,DataFrame可以有很多列。并且DataFrame很多操作与Series相似

导入本文需要的包

import pandas as pd
import numpy as np

通过字典创建DataFrame

city_data = {"City": ["New York City", "Paris", "Barcelona", "Rome"],"Country": ["United States", "France", "Spain", "Italy"],"Population": [8600000, 2141000, 5515000, 2873000]
}
cities = pd.DataFrame(city_data)
cities

DataFrame与Series的相似之处

使用read_csv函数导入DataFrame
nba = pd.read_csv("./pandas-in-action-master/chapter_04_the_dataframe_object/nba.csv",parse_dates=["Birthday"])
nba
Series和DataFrame的共享与专有属性

Series只有一列,所以其只有一个dtype属性。而DataFrame有很多

pd.Series([1, 2, 3]).dtype
nba.dtypes

注意Series是dtype,DataFrame是dtypes

查看列名:

nba.columns

查看维度:

nba.shape

计算数值总数:

nba.size

这样得到的事包含缺失值的数量,如果想要查看排出缺失值的总数,可以用下面这种方法

nba.count().sum()
Series和DataFrame的共有方法
nba.head(2)
nba.tail(n = 3)
nba.sample(3)
nba.max()
nba.min()
nba.nlargest(n = 4, columns = "Salary")
# 只对数字字段加和
nba.sum(numeric_only = True)
nba.mean(numeric_only = True)
nba.median(numeric_only = True)
nba.mode(numeric_only = True)
nba.std(numeric_only = True)

对DataFrame进行排序

按照单列进行排序
nba.sort_values("Name")
nba.sort_values(by = "Name")
nba.sort_values(by = "Name", ascending = False) # 降序
按照多列进行排序
nba.sort_values(by = ["Team", "Name"])
# 还可以指定每一列是升序还是降序
nba.sort_values(by = ["Team", "Name"], ascending = [True, False])
按照索引进行排序
# 在存储排序之后,我们还可以通过对索引排序来恢复
nba = nba.sort_values(by = ["Team", "Name"], ascending = [True, False])
nba
nba = nba.sort_index()
nba
对列索引进行排序
nba.sort_index(axis = "columns")
nba.sort_index(axis = 1)

设置索引

nba.set_index(keys = "Name")
nba.set_index("Name")
nba = nba.set_index("Name") # 覆盖

上面两种是相同的

从DataFrame中选择列

从DataFrame中选择单列
nba.Salary

这种方式返回的是对应的Series

还可以:

nba[("Salary")]

这种方法的优点是支持带空格的列名,如果列名带空格只能通过方括号来提取

从DataFrame中选择多列
nba[["Salary", 'Birthday']]

中括号里的顺序变了,输出的顺序也会变

nba[['Birthday', 'Salary']]

可以使用select_dtypes方法,根据数据类型选择列。该方法接受两个参数includeexclude。参数接收单个字符串或列表,表示Pandas应保留或丢弃的列类型。

nba.select_dtypes(include = "object")
nba.select_dtypes(exclude = ["object", "int"])

从DataFrame中选择行

使用索引标签提取行
nba.loc["LeBron James"]
nba.loc[["LeBron James", "Paul George"]]

同样的索引时的顺序,代表输出的顺序

还支持Python的列表切片语法

nba.sort_index().loc["Otto Porter" : "Patrick Beverley"]
nba.sort_index().loc["Zach Collins":]
nba.sort_index().loc[:"Al Horford"]

loc切片包括上限的值,但列表切片不包括上限的值

按索引位置提取行
nba.iloc[300]
nba.iloc[[100, 200, 300, 400]]
nba.iloc[400:404]
nba.iloc[:2]
nba.iloc[447:]
从特征列中提取特征值
nba.loc["Giannis Antetokounmpo", "Team"]
nba.loc["James Harden", ["Position", "Birthday"]]
nba.loc[["Russell Westbrook", "Anthony Davis"], ["Team", "Position"]]
nba.loc["Joel Embiid", "Position" : "Salary"]
nba.iloc[57, 3]

使用lociloc的时因为Pandas要先确定传入的数据类型,所以运行速度较慢。如果只需要提取单个值的时候,可以用at代替loc,用iat代替iloc,使代码的运行速度更快。其中at系列和loc系列的使用方法类似。同时at系列也可以用于Series

对行或列进行重命名

查看列名:

nba.columns

可以通过为该属性分配新名称来重命名DataFrame的任何或所有列

nba.columns = ["Team", "position", "Date of Birth", "Pay"]

还可以通过rename传入一个字典实现,其中字典的值是新的名称

nba = nba.rename(columns = {"Date of Birth": "Birthday"})

将上面代码中的columns换位index就为更改索引名称

重置索引

现在我想要将Team作为新的索引,但我直接通过set_index更改会导致Name列数据的丢失

nba.set_index("Team").head()

我们可以通过reset_index之前的索引替换为数字索引,并且那一列会被保留,再更换索引

nba.reset_index().set_index("Team").head()

代码挑战

nfl.csv 文件包含美国国家橄榄球联盟中与 NBA 相似的数据结构,包括球员的 Name、Team、Position、Birthday 和 Salary 信息。尝试回答如下问题:

  1. 如何导入 nfl.csv 文件,并将其 Birthday 列中的值转换为日期时间类型?
  2. 可以通过哪两种方式设置 DataFrame 索引来存储球员姓名?
  3. 如何计算这个数据集中每支球队的球员人数?
  4. 收入最高的 5 名球员是谁?
  5. 如何先按球队名称升序对数据集进行排序,然后按薪资降序对数据集进行排序?
  6. New York Jets 队年龄最大的球员是谁,他的生日是哪天?
解决方案

http://www.dtcms.com/wzjs/479675.html

相关文章:

  • 网页设计与制作课件和素材百度seo排名报价
  • wordpress建站好吗推广员网站
  • 怎样做网络推广优化济南seo优化外包服务公司
  • 做网站需要报备什么条件百度一下官网首页百度一下百度
  • 英文网站建设用哪种字体武汉seo全网营销
  • 建立企业网站地址链接是什么意思
  • 网站导航栏动效怎么做的百度推广代理查询
  • 网站建设 计入哪个科目百度做个人简介多少钱
  • 在家帮别人做网站赚钱吗搜索引擎在线观看
  • 怎样让自己做的网站被百度收录河南网站推广那家好
  • 公众号可以做网站维护链接吗交换链接
  • 网站建设商家老哥们给个关键词
  • 营销网站建设企业网络黄页推广软件哪个好用
  • 深圳建设网站的公司简介seo搜索引擎优化的内容
  • 想在公司局域网做建网站知乎软文推广
  • 网站建设工作室 怎么样新媒体口碑营销案例
  • 深圳网站公安局备案流程十大计算机培训机构排名
  • 怎么做美食的网站教育培训平台
  • 友汇网 做公司网站seo联盟
  • 西安英文网站制作搜索引擎优化工作
  • 衡水做wap网站建设建站seo是什么
  • 北京网站推广价格精准信息预测
  • 做导购型网站如何搜索关键词
  • 北京网站营销与推广百度推广客户端mac版
  • 建设网购网站关于软文营销的案例
  • 做电子商城网站的优化大师官方
  • 石家庄疫情封城最新消息aso优化吧
  • c做网站seo排名优化软件有用吗
  • 沈阳h5建站长沙做优化的公司
  • 昆明做网站优化的公司seo快排技术教程