我的excel名为hello.xls, 其中age列需要作为int型处理,则:
pd = pandas.read_excel('hello.xls', dtype={'age':np.int32})
*.因为类型使用pythoniat函数了numpy库, 如果上面语句提示np没找到,你还需要先执行一下:
import numpy as np
希望可以帮到题主, 欢迎追问
Python 数据处理(二十四)—— 索引和选择 如果你想获取'A'列pythoniat函数的第0和第2个元素 , 你可以这样做:
这也可以用.iloc获?。ü褂梦恢盟饕囱≡衲谌?
可以使用.get_indexer获取多个索引:
警告 :
对于包含一个或多个缺失标签的列表,使用.loc或[]将不再重新索引,而是使用.reindex
在以前的版本中,只要索引列表中存在至少一个有效标签,就可以使用.loc[list-of-labels]
但是现在,只要索引列表中存在缺失的标签将引发KeyError。推荐的替代方法是使用.reindex()。
例如
索引列表的标签都存在
先前的版本
但是,现在
索引标签列表中包含不存在的标签,使用reindex
另外 , 如果你只想选择有效的键,可以使用下面的方法,同时保留了数据的dtype
对于.reindex(),如果有重复的索引将会引发异常
通常,您可以将所需的标签与当前轴做交集,然后重新索引
但是,如果你的索引结果包含重复标签,还是会引发异常
使用sample()方法可以从Series或DataFrame中随机选择行或列 。
该方法默认会对行进行采样,并接受一个特定的行数、列数 , 或数据子集 。
默认情况下, sample每行最多返回一次 , 但也可以使用replace参数进行替换采样
默认情况下,每一行被选中的概率相等,但是如果你想让每一行有不同的概率 , 你可以为sample函数的weights参数设置抽样权值
这些权重可以是一个列表、一个NumPy数组或一个Series , 但它们的长度必须与你要抽样的对象相同 。
缺失的值将被视为权重为零,并且不允许使用inf值 。如果权重之和不等于1 ,则将所有权重除以权重之和,将其重新归一化 。例如
当应用于DataFrame时,您可以通过简单地将列名作为字符串传递给weights作为采样权重(前提是您要采样的是行而不是列) 。
sample还允许用户使用axis参数对列进行抽样 。
最后,我们还可以使用random_state参数为sample的随机数生成器设置一个种子,它将接受一个整数(作为种子)或一个NumPyRandomState对象
当为该轴设置一个不存在的键时,.loc/[]操作可以执行放大
在Series的情况下,这实际上是一个追加操作
可以通过.loc在任一轴上放大DataFrame
这就像DataFrame的append操作
由于用[]做索引必须处理很多情况(单标签访问、分片、布尔索引等),所以需要一些开销来搞清楚你的意图
如果你只想访问一个标量值,最快的方法是使用at和iat方法,这两个方法在所有的数据结构上都实现了
与loc类似,at提供了基于标签的标量查找 , 而iat提供了基于整数的查找,与iloc类似
同时,你也可以根据这些索引进行设置值
如果索引标签不存在,会放大数据
另一种常见的操作是使用布尔向量来过滤数据 。运算符包括:
|(or) 、 (and) 、 ~ (not)
这些必须用括号来分组,因为默认情况下,Python会将df['A']2df['B']3这样的表达式评估为df['A'](2df['B'])3,而理想的执行顺序是(df['A']2)(df['B']3)
使用一个布尔向量来索引一个Series,其工作原理和NumPyndarray一样 。
您可以使用一个与DataFrame的索引长度相同的布尔向量从DataFrame中选择行
推荐阅读
- pdf图片如何添加背景,pdf图片如何添加背景文字
- jquery循环遍历数组赋值,jquery中遍历数组
- 安卓手机游戏双开同事运行的简单介绍
- 二战游戏里的射击手感好吗,二战游戏里的射击手感好吗视频
- 老N孩go语言 cdbook老言老语娃娃
- 关于asp.net视频播放器的信息
- linux命令物理地址,linux 物理地址
- 毕业设计计算机论文怎么写,毕业计算机论文及毕业设计题目
- python简洁函数 python函数详解