DataFrame 的索引是同一个 Python 对象。...::: 重置索引,并与其它对象对齐 提取一个对象,并用另一个具有相同标签的对象 reindex 该对象的轴。这种操作的语法虽然简单,但未免有些啰嗦。...该操作把行转为 Series,同时改变数据类型,并对性能有影响。 `itertuples()` 把 DataFrame 的行当作值的命名元组进行迭代。...Series 里的每一行数据,该操作不会保留每行数据的数据类型,因为数据类型是通过 DataFrame 的列界定的。...itertuples() 保存值的数据类型,而且比 iterrows() 快。 ::: tip 注意 包含无效 Python 识别符的列名、重复的列名及以下划线开头的列名,会被重命名为位置名称。
标签的切片对象 data.loc[:,['name','salary']][:5] iloc iloc是基于位置的索引,利用元素在各个轴上的索引序号进行选择,序号超出范围会产生IndexError,...对象的序列或映射。...要沿其连接的轴。 join: {'inner', 'outer'}, 默认为 'outer'。如何处理其他轴上的索引。外部用于联合,内部用于交集。...如果为 True,则不要使用串联轴上的索引值。结果轴将被标记为 0, …, n - 1。如果您在连接轴没有有意义的索引信息的情况下连接对象,这将非常有用。请注意,其他轴上的索引值在连接中仍然有效。...或命名的 Series 对象;right:另一个 DataFrame 或命名的 Series 对象; on: 要加入的列或索引级别名称; left_on:左侧 DataFrame 或 Series 的列或索引级别用作键
Series Series是一维标记数组,可以存储任意数据类型,如整型、字符串、浮点型和Python对象等,轴标一般指索引。...DataFrame DataFrame是二维标记数据结构,列可以是不同的数据类型。...它是最常用的pandas对象,像Series一样可以接收多种输入:lists、dicts、series和DataFrame等。初始化对象时,除了数据还可以传index和columns这两个参数。...在交叉分析中,坐标轴的名称略显随意 items: axis 0 代表DataFrame的item major_axis: axis 1 代表DataFrames的index(行) minor_axis...PanelND PanelND是一个拥有factory集合,可以创建像Panel4D一样N维命名容器的模块。
数据文件 pd指pandas简称,df指DataFrame对象。...Series Series是一维标记数组,可以存储任意数据类型,如整型、字符串、浮点型和Python对象等,轴标一般指索引。...DataFrame DataFrame是二维标记数据结构,列可以是不同的数据类型。...它是最常用的pandas对象,像Series一样可以接收多种输入:lists、dicts、series和DataFrame等。初始化对象时,除了数据还可以传index和columns这两个参数。...在交叉分析中,坐标轴的名称略显随意 items: axis 0 代表DataFrame的item major_axis: axis 1 代表DataFrames的index(行) minor_axis
惯例开局一张图 01 索引简介与样例数据 Series和DataFrame是pandas中的主要数据结构类型(老版本中曾有三维数据结构Panel,是DataFrame的容器,后被取消),而二者相较于传统的数组或...后文将以此作为操作对象,针对索引的几种常用变换进行介绍。 注:这里的索引应广义的理解为既包扩行索引,也包括列标签。...rename用法套路与reindex很为相近,但执行功能完全不同,主要用于执行索引重命名操作,接收一个字典或一个重命名规则的函数类型,示例如下: ?...时对其中的每一行或每一列进行变换;而applymap则仅可作用于DataFrame,且作用对象是对DataFrame中的每个元素进行变换。...二者是非常常用的一组操作,例如在执行groupby操作后一般会得到一个series类型,此时增加一个reset_index操作即可实现series转换为DataFrame。当然转换的操作不止这一种。
datas 使用pandas.DataFrame()方法将二维列表转换为DataFrame对象df,每列分别命名为'类型'、'书名'、'作者'、'字数'、'推荐' 将'推荐'列的数据类型转换为整型 数据统计与分组...() 设置自定义字体的路径,并创建FontProperties对象custom_font 使用hist()方法绘制'类型'列的直方图 使用xlabel()方法设置x轴标签,并使用自定义字体 使用show...将之前构建的二维列表datas重新转换为DataFrame对象df 使用to_excel()方法将DataFrame保存为Excel文件,文件名为data.xlsx,不包含索引列 完整代码 import...', '推荐']) # 使用pandas库将二维列表datas转换为DataFrame对象df,并为每一列命名 df['推荐'] = df['推荐'].astype('int') # 将推荐列的数据类型转换为整型...datas转换为DataFrame对象df,并为每一列命名 df.to_excel('data.xlsx', index=False) # 将DataFrame保存为Excel文件,文件名为data.xlsx
必须在两个 DataFrame 对象中找到。如果未指定并且没有给出其他连接键,则将使用left和right中的列名的交集作为连接键。 left_on 用作连接键的left DataFrame 中的列。...特别是,您有许多额外的考虑: 如果对象在其他轴上的索引不同,我们应该合并这些轴中的不同元素还是仅使用共同的值? 连接的数据块在结果对象中需要被识别吗? “连接轴”中包含需要保留的数据吗?...,可以创建不同类型的绘图,最好使用轴方法而不是像 plt.plot 这样的顶级绘图函数。...刻度、标签和图例 大多数类型的绘图装饰都可以通过 matplotlib 轴对象上的方法访问。这包括xlim、xticks和xticklabels等方法。它们分别控制绘图范围、刻度位置和刻度标签。...seaborn 简化了创建许多常见可视化类型的过程。 线图 Series 和 DataFrame 具有plot属性,用于创建一些基本的绘图类型。
由于 key 不能重复,所以,在 set 中,没有重复的 key。 变量 变量的概念基本上和初中代数的方程变量是一致的,只是在计算机程序中,变量不仅可以是数字,还可以是任意数据类型。...请谨记面向对象三大基本要素:抽象,封装,继承。如果你当前对这些还没有太多的概念的话,也不要紧,你可以在后面的学习中慢慢体会。...ndarray 对象 NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引。...(dtype) 数据类型对象可以用来创建符合我们期望数据结构的数组 numpy.dtype(object, align, copy) object:要转换的数据类型对象 align:如果为 True,...下面罗列了比较重要的 ndarray 对象属性 属性 说明 ndim 秩,即轴的数量或维度的数量 shape 数组的维度 size 数组元素的总个数 dtype 元素的类型 itemsize 每个元素的大小
Numpy库 Numpy最重要的一个特点是就是其N维数组对象,即ndarray,ndarray是一个通用的同构数据多维容器,其中的所有元素必须是相同类型的。...np.array会尝试为每一个新建的数组推断出适合它的数据类型。 arange是Python内置函数range的数组版。 2、数据类型 dtype是一个用来说明数组的数据类型的对象。...其命名方式是一个类型名(float和int)后面跟一个用于表示各元素位长的数字。常用的是float64和int32. 也可以使用astype进行数组中数据类型的转化。...2、DataFrame (1)概念: DataFrame是一个表格型的数据结构,含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔值等)。...2、丢弃指定轴上的项 使用drop方法删除指定索引值对应的对象。 可以同时删除多个索引对应的值。 对于DataFrame,可以删除任意轴上(columns)的索引值。
合并数据集 pandas.merge可根据一个或者多个不同DataFrame中的行连接起来。 pandas.concat可以沿着一条轴将多个对象堆叠到一起。...实例方法combine_first可以将重复数据编接在一起,用一个对象中的值填充另一个对象中的缺失值。 2....数据风格的DataFrame合并操作 2.1 数据集的合并(merge)或连接(jion)运算时通过一个或多个键将行链接起来的。如果没有指定,merge就会将重叠列的列名当做键,最好显示指定一下。...外连接求取的是键的并集,组合了左连接和右连接。 2.3 都对的的连接是行的笛卡尔积。 2.4 merge的suffixes选项,用于指定附加到左右两个DataFrame对象的重叠列名上的字符串。...5.2 替换值 replace可以由一个带替换值组成的列表以及一个替换值 data.replace([-999,-1000],np.nan) 5.3 重命名轴索引 轴标签也可通函数或映射进行转换,从而得到一个新对象轴还可以被就地修改
重建索引会更改DataFrame的行列标签,以实现类似操作: 重新排序现有数据,以匹配一组新的标签 在没有标签数据的标签位置插入缺失(NA)标识 重建索引与其他对象对齐 重建一个对象的索引,轴被重建为和另一个对象相同...: df1 = pd.DataFrame(np.random.randn(10,3),columns=['col1','col2','col3']) df2 = pd.DataFrame(np.random.randn...limit参数在重建索引时提供填充的控制,限制指定连续匹配的次数: df1 = pd.DataFrame(np.random.randn(6,3),columns=['col1','col2','col3...rename()方法允许基于一些映射(字典或者Series)或者任意的函数来重新标记一个轴: df1 = pd.DataFrame(np.random.randn(6,3),columns=['col1...,默认为Flase并复制底层数据,指定传递inplace = Ture来标识将数据重命名。
我们使用pandas库来实现这个功能,pandas是一个强大而灵活的数据分析和处理库,可以方便地读取、操作和转换数据。我们需要做以下几个步骤:读取csv文件,将数据转换为DataFrame对象。...去除空值和重复值,保证数据的完整性和唯一性。对部分字段进行类型转换,如将评分和评分人数转换为数值类型,将出版年转换为日期类型。...以下是数据清洗和处理的代码:# -*- coding: utf-8 -*-import pandas as pd# 读取csv文件,将数据转换为DataFrame对象df = pd.read_csv('...读取清洗后的csv文件,将数据转换为DataFrame对象。使用matplotlib的子模块pyplot来绘制各种图表,如直方图、饼图、箱线图、散点图等。...文件,将数据转换为DataFrame对象df = pd.read_csv('douban_books_cleaned.csv')# 绘制直方图,显示不同评分区间的图书数量plt.figure(figsize
好了,介绍完所需要的数据类型,接下里就详细介绍Altair可视化主要的「三大步骤」。...Chart Object)对象转换 在进行Altair可视化绘制时,我们要将之前读取的的数据转换成可被Altair接受的绘图对象,这时候,我们需要调用Altair库的Chart() 方法将数据转换成Altair...的Chart对象。...类型 Encodings and Marks 在生成图表对象之后,就可以根据数据指定我们希望绘制的可视化作品啦。.../user_guide/marks.html 在选择完我们的mark对象后,接下来我们要做的就是如何将数据进行映射,比如,我绘制散点图,我需要将数据中的哪一列映射到X轴,哪一列映射到Y轴呢?
重新索引以与另一个对象对齐 你可能希望取一个对象并重新索引其轴,使其标签与另一个对象相同。...你可能希望取一个对象,并将其轴重新索引为与另一个对象相同的标签。...DataFrame 遵循字典的惯例,迭代对象的“键”。...这会将行转换为 Series 对象,这可能会改变 dtypes 并具有一些性能影响。 itertuples():将 DataFrame 的行作为命名元组的值进行迭代。...明确一点,没有任何 pandas 方法会具有修改数据的副作用;几乎每个方法都会返回一个新对象,保持原始对象不变。如果数据被修改,那是因为你明确这样做了。
创建 Pandas数据对象时,如果没有明确地指出数据的类型,则可以根据传入的数据推断出来并且通过 dtypes属性进行查看。 ...数据合并 2.1轴向堆叠数据 2.1.1 concat()函数 concat()函数可以沿着一条轴将多个对象进行堆叠,其使用方式类似数据库中的数据表合并。 ...merge()函数还支持对含有多个重叠列的 Data frame对象进行合并。 使用外连接的方式将 left与right进行合并时,列中相同的数据会重叠,没有数据的位置使用NaN进行填充。 ...columns:用于创建新 DataFrame对象的列索引 values:用于填充新 DataFrame对象中的值。 4....数据转换 4.1 重命名轴索引 Pandas中提供了一个rename()方法来重命名个别列索引或行索引的标签或名称。
callable对象怎么实现的? 还在觉得yield可有可无吗? 还觉得装饰器与你没有毛关系吗? NumPy 的多维数组reshape 成这个形、那个形,怎么做到的啊?...影响事物发展的机理永远都在里面,在表层靠下一点,比别多人多想一点。有没有能完整回答上面问题,教人以渔的教材。...说说你知道的创建字典的几种方法? 字典视图是什么? 所有对象都能作为字典的键吗? 集合内的元素可以为任意类型吗? 什么是可哈希类型?举几个例子 求集合的并集、差集、交集、子集的方法?...使用 Python ,如何重命名某个文件? 关于文件压缩、加密,在专栏会涉及到。 time 模块,time.local_time() 返回值是什么?对象的类型是? 如何格式化时间字符串?'...步长为小时的时间序列数据,有没有小技巧,快速完成下采样,采集成按天的数据呢? DataFrame 上快速对某些列展开特征工程,使用 map 如何做到?
其中最重要的是spiders目录,这里存放了我们定义的Spider类。Spider类是用于爬取网页和提取数据的核心组件,它需要指定起始URL和解析规则。...函数,读取books.csv文件中的数据,并将其转换为一个DataFrame对象。...DataFrame对象是一个二维的表格型数据结构,它有行索引和列索引,可以方便地进行数据的查询、筛选、分组、聚合等操作。...# 读取books.csv文件中的数据,并将其转换为一个DataFrame对象,命名为dfdf = pd.read_csv('books.csv')然后,我们可以使用Matplotlib库的各种函数,绘制不同类型的图表...我们还可以利用本文提供的代码,自己尝试爬取其他网站上的数据,并绘制不同类型的图表,探索数据背后的信息和价值。
示例 重建索引与其他对象对齐 填充时重新加注 重建索引时的填充限制 重命名 重新索引会更改DataFrame的行标签和列标签。重新索引意味着符合数据以匹配特定轴上的一组给定的标签。...可以通过索引来实现多个操作: 重新排序现有数据以匹配一组新的标签 在没有标签数据的标签位置插入缺失值(NA)标记 示例 import pandas as pd import numpy as np N...有时可能希望采取一个对象和重新索引,其 轴 被标记为与另一个对象相同 import pandas as pd import numpy as np df1 = pd.DataFrame(np.random.randn...限制指定连续匹配的最大计数 import pandas as pd import numpy as np df1 = pd.DataFrame(np.random.randn(6,3),columns...3 NaN NaN NaN 4 NaN NaN NaN 5 NaN NaN NaN 重命名
学习之前假设你已经有了对Pandas和Numpy库的基本认识,包括Pandas的工作基础Series和DataFrame对象,应用到这些对象上的常用方法,以及熟悉了NumPy的NaN值。...>>> import pandas as pd >>> import numpy as np 删除DataFrame的列 经常的,你会发现数据集中不是所有的字段类型都是有用的。...这些没有用的信息会占用不必要的空间,并会使运行时间减慢。 Pandas提供了一个非常便捷的方法drop()函数来移除一个DataFrame中不想要的行或列。...记录一下pandas是如何将包含国家的列名NaN改变为Unnamed:0的。 为了重命名列,我们将使用DataFrame的rename()方法,允许你以一个映射(这里是一个字典)重新标记一个轴。...更多的,你学会了如何使用.str()清洗对象字段,以及如何使用applymap对整个数据集清洗。最后,我们探索了如何移除CSV文件的行,并且使用rename()方法重命名列。
领取专属 10元无门槛券
手把手带您无忧上云