TypeError: ‘int’ object is not callable:整数对象不可调用的完美解决方法 ️ 大家好,我是默语,擅长全栈开发、运维和人工智能技术。...摘要 在Python编程中,TypeError: ‘int’ object is not callable错误通常发生在开发者尝试将整数对象作为函数调用时。...TypeError: ‘int’ object is not callable是一个特别的类型错误,它表明我们试图将一个整数类型的变量当作一个可调用的函数来使用。...以下是一个简单的示例: number = 5 result = number() # 尝试将整数对象作为函数调用 运行上面的代码时,会抛出如下错误: TypeError: 'int' object is...确保你使用的对象是可调用的,避免使用整数或其他类型的对象作为函数。 3.3 使用调试工具 ️ 在IDE中使用调试工具可以帮助你快速找到问题的根源,确保你的代码能够正常运行。
例如{'a': np.float64, 'b': np.int32, 'c': 'Int64'} 使用str或object与适当的na_values设置一起使用以保留并不解释数据类型。...类型推断是一件很重要的事情。如果一个列可以被强制转换为整数类型而不改变内容,解析器将这样做。任何非数字列将与其他 pandas 对象一样以对象 dtype 传递。...此表显示了从 pandas 类型的映射: pandas 类型 Table Schema 类型 int64 integer float64 number bool boolean datetime64[ns...注意 由于没有标准的 XML 结构,设计类型可以以多种方式变化,read_xml 最适用于较平坦、较浅的版本。...要解释没有类型推断的数据,请使用类型 str 或 object。
In[19]: movie.size Out[19]: 137648 # 该数据集的维度 In[20]: movie.ndim Out[20]: 2 # 该数据集的长度 In[21]: len(...更多 # 设定skipna=False,没有缺失值的数值列才会计算结果 In[29]: movie.min(skipna=False) Out[29]: num_critic_for_reviews...movie数据集的对象数据包含缺失值。...比较缺失值 # Pandas使用NumPy NaN(np.nan)对象表示缺失值。...这是一个不等于自身的特殊对象: In[48]: np.nan == np.nan Out[48]: False # Python的None对象是等于自身的 In[49]: None == None
原文:pandas.pydata.org/docs/ 重复标签 原文:pandas.pydata.org/docs/user_guide/duplicates.html Index对象不需要是唯一的...注意 与 R 的factor函数相反,目前没有办法在创建时分配/更改标签。在创建后使用categories来更改类别。...所有其他比较,特别是两个具有不同类别或一个具有任何类列表对象的分类的“非相等”比较,都会引发TypeError。...CategoricalDtype 类别的类型完全由 categories:一系列唯一值且没有缺失值 ordered:一个布尔值 这些信息可以存储在CategoricalDtype中。...所有对分类数据与标量的比较。 所有其他比较,特别是两个具有不同类别的分类或分类与任何类似列表对象的“非相等”比较,都会引发TypeError。
# 创建一个Series对象 In[12]: s = pd.Series({'Name': 'Zach', 'Age': 3}, name=len(names)) s Out[12]...# append方法可以同时连接多行,只要将对象放到列表中 In[14]: s1 = pd.Series({'Name': 'Zach', 'Age': 3}, name=len(names))...4. concat, join, 和merge的区别 concat: Pandas函数 可以垂直和水平地连接两个或多个pandas对象 只用索引对齐 索引出现重复值时会报错 默认是外连接(也可以设为内连接...) join: DataFrame方法 只能水平连接两个或多个pandas对象 对齐是靠被调用的DataFrame的列索引或行索引和另一个对象的行索引(不能是列索引) 通过笛卡尔积处理重复的索引值 默认是左连接...# 因为steak在两张表中分别出现了两次,融合时产生了笛卡尔积,造成结果中出现了四行steak;因为coconut没有对应的价格,造成结果中没有coconut # 下面只融合2017年的数据 In[
检查分组对象 # 查看分组对象的类型 In[42]: college = pd.read_csv('data/college.csv') grouped = college.groupby..._libs.hashtable.Int64HashTable.get_item (pandas/_libs/hashtable.c:14010)() TypeError: an integer is..._libs.hashtable.Int64HashTable.get_item (pandas/_libs/hashtable.c:14010)() TypeError: an integer is..._libs.hashtable.Int64HashTable.get_item (pandas/_libs/hashtable.c:14010)() TypeError: an integer is...# 判断DIST列有无缺失值 In[84]: flights.DIST.hasnans Out[84]: False # 再次删除DIST列的缺失值(原书是没有这两段的) In[85]: flights.dropna
索引对象Index Series和DataFrame中的索引都是Index对象 示例代码: print(type(ser_obj.index)) print(type(df_obj2.index))...print(df_obj2.index) 运行结果: pandas.indexes.range.RangeIndex'> pandas.indexes.numeric.Int64Index...'> Int64Index([0, 1, 2, 3], dtype='int64') 索引对象不可变,保证了数据的安全 示例代码: # 索引对象不可变 df_obj2.index[0] = 2 运行结果...: Index does not support mutable operations 常见的Index种类 Index,索引 Int64Index,整数索引 MultiIndex,层级索引 DatetimeIndex...,时间戳类型 Series索引 index 指定行索引名 示例代码: ser_obj = pd.Series(range(5), index = ['a', 'b', 'c', 'd', 'e']) print
安装并使用PandasPandas对象简介Pandas的Series对象Series是广义的Numpy数组Series是特殊的字典创建Series对象Pandas的DataFrame对象DataFrame...是广义的Numpy数组DataFrame是特殊的字典创建DataFrame对象Pandas的Index对象将Index看作不可变数组将Index看作有序集合 安装并使用Pandas import numpy...先来看看Pandas三个基本的数据结构: Series DataFrame Index Pandas的Series对象 Pandas的Series对象是一个带索引数据构成的一维数组,可以用一个数组创建Series...字典是将任意键映射到一组任意值的结构,而Series对象是将类型化键映射到一组类型化值的结构。...这种类型很重要:就像NumPy数组背后的特定类型编译代码使它在某些操作上比Python列表更有效一样,Series对象的类型信息使它在某些操作上比Python字典更有效。
在最基本的层面上,Pandas 对象可以认为是 NumPy 结构化数组的增强版本,其中行和列用标签而不是简单的整数索引来标识。...我们将使用标准的 NumPy 和 Pandas 导入,来启动我们的代码会话: import numpy as np import pandas as pd Pandas 序列对象 Pandas Series...字典是将任意键映射到一组任意值的结构,而Series是将类型化键映射到一组类型化值的结构。...这种类型很重要:正如 NumPy 数组后面的特定于类型的编译代码,使其在某些操作方面,比 Python 列表更有效,PandasSeries``的类型信息使其比 Python 字典更有效。...Pandas 数据帧对象 Pandas 的下一个基本结构是DataFrame。
,pandas 对象上的take方法不适用于布尔索引,可能会返回意外的结果。...int64 数据类型的 Index,对 RangeIndex 进行操作,其结果无法由 RangeIndex 表示,但应具有整数数据类型,并将转换为具有 int64 的 Index。...`IntervalDtype` 以及 `Interval` 标量类型,为 pandas 提供了区间表示的一流支持。...RangeIndex是Index的优化版本,可以表示单调有序集合。这类似于 Python 的range 类型。RangeIndex始终具有int64数据类型。...索引可能会改变底层 Series 的数据类型 不同的索引操作可能会改变Series的数据类型。
pandas内置的Timestamp的用法,在不导入datetime等库的时候实现对时间相关数据的处理。...=15)等形式可以得到一个时间戳类型的对象,Timestamp的常用输入参数有: ts_input:要转为时间戳的数据,可以是字符串,整数或小数,int/float类型要和unit搭配着用; unit:...标识ts_input输入int/float到底是距1970-1-1的天数还是秒数还是毫秒数等; year/month/day/hour/minute/second等:生成特定年月日的时间类型数据,年月日必须要有...,否则会报TypeError; tz:timezone,时区; 整理为思维导图如下: ?...; .date():把时间戳转为一个日期类型的对象,只有年月日, pd.Timestamp('2019-9-22 14:12:13').date()=datetime.date(2019,9,22);
即使你从未听说过NumPy,Pandas也可以让你在几乎没有编程背景的情况下轻松拿捏数据分析问题。...Pandas 给 NumPy 数组带来的两个关键特性是: 异质类型 —— 每一列都允许有自己的类型 索引 —— 提高指定列的查询速度 事实证明,这些功能足以使Pandas成为Excel和数据库的强大竞争者...默认情况下,当创建一个没有索引参数的Series(或DataFrame)时,它初始化为一个类似于Python的range()的惰性对象。...>>> len(df.compare(df)) == 0 True 添加、插入、删除 尽管系列对象应该是大小不可变的,但有可能在原地追加、插入和删除元素,但所有这些操作都是: 缓慢,因为它们需要为整个对象重新分配内存并更新索引...这个惰性的对象没有任何有意义的表示,但它可以是: 迭代(产生分组键和相应的子系列--非常适合于调试): groupby 以与普通系列相同的方式进行查询,以获得每组的某个属性(比迭代快): 所有操作都不包括
将使用实例化的类型所对应的空对象作为初始化数据 # str -> "" | int -> 0 | list -> list() | dict -> dict() | set -> set() | tuple...False来使pandas不适用第一列作为行索引 usecols: array-like 返回一个数据子集, 该列表中的值必须可以对应到文件中的位置(数字可以对应到指定的列)或者是字符传为文件中的列名,...(从文件开始处算), 或需要跳过的行号列表 skipfooter: int 从文件尾部开始忽略 skip_footer: int 从文件尾部开始忽略(不推荐使用) nrows: int 需要读取的行数(...: bool 如果设定为True并且parse_dates可用, 那么pandas将尝试转换为日期类型, 如果可以转换, 转换方法并解析。...对象, 以便逐块处理文件 chunksize: int 文件块的大小 compression: "infer" or "gzip" or "bz2" or "zip" or "xz" or None 直接使用磁盘上的压缩文件
第08章 数据清理 第09章 合并Pandas对象 第10章 时间序列分析 第11章 用Matplotlib、Pandas、Seaborn进行可视化 ---- In[1]: import pandas...的长度是一样的 In[76]: len(fb_likes), len(fb_likes_cap) Out[76]: (4909, 4909) # 再做一张柱状图,效果好多了 In[77]: fb_likes_cap.hist...== movie_boolean.shape Out[84]: True # mask方法产生了许多缺失值,缺失值是float类型,所以之前是整数型的列都变成了浮点型 In[85]: movie_mask.dtypes...有一个assert_frame_equal方法,可以判断两个Pandas对象是否一样,而不检测其数据类型 In[86]: from pandas.testing import assert_frame_equal..., False, False], dtype=bool) In[103]: len(a), len(criteria) Out[103]: (4916, 4916) 更多 # 传入的布尔索引可以跟要操作的
第08章 数据清理 第09章 合并Pandas对象 第10章 时间序列分析 第11章 用Matplotlib、Pandas、Seaborn进行可视化 ---- In[1]: import pandas...,修改索引对象的一个值,会导致类型错误,因为索引对象是不可变类型 In[10]: columns[1] = 'city' ---------------------------------------...,可以看到长度从2000到达了117万 In[29]: salary_add1 = salary1 + salary1 len(salary1), len(salary2), len...(salary_add), len(salary_add1) Out[29]: (2000, 2000, 1175424, 2000) 更多 # 验证salary_add值的个数。...GRAD_DEBT_MDN_SUPP object Length: 26, dtype: object # MD_EARN_WNE_P10 和 GRAD_DEBT_MDN_SUPP 两列是对象类型
异常处理 常见的异常处理 AssertionError;断言语句失败 assert在测试程序的时候 在代码植入检查点 >>> my_list = ["tianjun"] >>> assert len(my_list...不同类型的无效操作 >>> 1 + '1' Traceback (most recent call last): File "", line 1, in TypeError...print('没有异常') ......assert语句失败 AttributeError 特性应用或赋值时引发(试图访问一个对象没有的属性) IOError 试图打开不存在的文件或者无全新的文件等操作时...使用一个未被赋予对象的变量 SyntaxError Python代码逻辑语法出错不能执行 TypeError 传入的对象类型与要求不符 UnboundLocalError
这些内容都是基于原生的序列类型(如字符串、列表、元组……),那么,我们是否可以定义自己的序列类型并让它支持切片语法呢?更进一步,我们是否可以自定义其它对象(如字典)并让它支持切片呢?...概括翻译一下:__getitem__() 方法用于返回参数 key 所对应的值,这个 key 可以是整型数值和切片对象,并且支持负数索引;如果 key 不是以上两种类型,就会抛 TypeError;如果索引越界...,会抛 IndexError ;如果定义的是映射类型,当 key 参数不是其对象的键值时,则会抛 KeyError 。...但是,对于其它非序列类型的自定义对象,就得自己实现切片逻辑。...4、小结 本文介绍了__getitem__()魔术方法,并用于实现自定义对象(以列表类型和字典类型为例)的切片功能,希望对你有所帮助。
下载本书 pdf:链接 下载本书 mobi:链接 # 引入pandas和numpy的约定 in[1]: import pandas as pd import numpy as...in[9]: # columns的类型 type(columns) # pandas.core.indexes.base.Index out[9]: pandas.core.indexes.base.Index...in[10]: # data的类型 type(data) # numpy.ndarray out[10]: numpy.ndarray in[11]: # 判断是不是子类型...理解数据类型 in[14]: movie = pd.read_csv('data/movie.csv') # 各列的类型 in[15]: movie.dtypes out[15]:...# a是int对象 In[72]: a = type(1) In[73]: type(a) Out[73]: type # a是pandas.core.series.Series对象 In[74
cumsum 计算前1/2/3/…/n个数的和 cummax 计算前1/2/3/…/n个数的最大值 cummin 计算前1/2/3/…/n个数的最小值...5.4 Pandas画图 对象.plot() kind -- line -- 折线图 bar barh....to_hdf() 注意:保存文件是****.h5 3.json 1.读取 -- pd.read_json() 2.写入 -- 对象.to_josn...inplace:True:会修改原数据,False:不替换修改原数据,生成新的对象 不是缺失值nan,有默认标记的 对象.replace()...对象.value_counts() 3.one-hot编码 就是把数据转换成为0,1统计类型 别名:哑变量,热独编码 api:
Pandas 中的缺失数据 Pandas 处理缺失值的方式受到其对 NumPy 包的依赖性的限制,NumPy 包没有非浮点数据类型的 NA 值的内置概念。...也就是说,附加了一个独立的布尔掩码数组的数组,用于将数据标记为“好”或“坏”。Pandas 可能源于此,但是存储,计算和代码维护的开销,使得这个选择变得没有吸引力。...因为它是一个 Python 对象,所以None不能用于任何 NumPy/Pandas 数组,只能用于数据类型为'object'的数组(即 Python 对象数组): import numpy as np...虽然这种对象数组对于某些目的很有用,但是对数据的任何操作都将在 Python 层面完成,与具有原生类型的数组的常见快速操作相比,其开销要大得多: for dtype in ['object', 'int..., 2, None]) ''' 0 1.0 1 NaN 2 2.0 3 NaN dtype: float64 ''' 对于没有可用标记值的类型,当存在 NA 值时,Pandas
领取专属 10元无门槛券
手把手带您无忧上云