1.2.0 的新增内容(2020 年 12 月 26 日)# 这些是 pandas 1.2.0 中的变化。请参阅发行说明以获取完整的变更日志,包括其他版本的 pandas。 警告 用于写入旧式Excel 文件的xlwt包.xls 不再维护。xlrd包现在仅用于读取旧式.xls文件。 以前,默认参数engine=None会read_excel() 导致xlrd在许多情况下使用该引擎,包括新的 Excel 2007+ ( .xlsx) 文件。如果安装了openpyxl,许多情况现在将默认使用该openpyxl引擎。请参阅read_excel()文档了解更多详细信息。 因此,强烈建议安装openpyxl读取 Excel 2007+ ( .xlsx) 文件。 使用“xlrd”读取“.xlsx”文件时,请不要报告问题。 不再支持此功能,请改为使用openpyxl。 除非该选项设置为 ,否则尝试使用该xlwt引擎将引发。虽然此选项现已弃用,并且还会引发,但它可以全局设置并抑制警告。建议用户使用引擎来写入文件。FutureWarningio.excel.xls.writer"xlwt"FutureWarning.xlsxopenpyxl 增强功能# 可以选择禁止重复标签# Series现在DataFrame可以使用标志来创建,allows_duplicate_labels=False以控制索引或列是否可以包含重复标签(GH 28394)。这可用于防止意外引入重复标签,从而影响下游操作。 默认情况下,继续允许重复。 In [1]: pd.Series([1, 2], index=['a', 'a']) Out[1]: a 1 a 2 Length: 2, dtype: int64 In [2]: pd.Series([1, 2], index=['a', 'a']).set_flags(allows_duplicate_labels=False) ... DuplicateLabelError: Index has duplicates. positions label a [0, 1] pandas 将allows_duplicate_labels通过许多操作传播该属性。 In [3]: a = ( ...: pd.Series([1, 2], index=['a', 'b']) ...: .set_flags(allows_duplicate_labels=False) ...: ) In [4]: a Out[4]: a 1 b 2 Length: 2, dtype: int64 # An operation introducing duplicates In [5]: a.reindex(['a', 'b', 'a']) ... DuplicateLabelError: Index has duplicates. positions label a [0, 2] [1 rows x 1 columns] 警告 这是一个实验性功能。目前,许多方法无法传播该allows_duplicate_labels值。在未来的版本中,预计每个获取或返回一个或多个 DataFrame 或 Series 对象的方法都会传播allows_duplicate_labels。 有关更多信息,请参阅重复标签。 该allows_duplicate_labels标志存储在新DataFrame.flags 属性中。它存储适用于pandas 对象的全局属性。这与 不同DataFrame.attrs,后者存储适用于数据集的信息。 将参数传递给 fsspec 后端# 许多读/写函数都获取了storage_options可选参数,以将参数字典传递到存储后端。例如,这允许将凭证传递到 S3 和 GCS 存储。有关哪些参数可以传递到哪些后端的详细信息,可以在各个存储后端的文档中找到(详细信息来自 内置实现的fsspec 文档并链接到外部实现)。请参阅读取/写入远程文件部分。 GH 35655storage_options添加了用于读取 excel 文件的fsspec 支持(包括)。 支持to_csv#中的二进制文件句柄 to_csv()支持二进制模式下的文件句柄(GH 19827和GH 35058)以及encoding(GH 13068和GH 23854)和compression(GH 22555)。如果 pandas 没有自动检测文件句柄是以二进制还是文本模式打开,则需要提供mode="wb". 例如: In [1]: import io In [2]: data = pd.DataFrame([0, 1, 2]) In [3]: buffer = io.BytesIO() In [4]: data.to_csv(buffer, encoding="utf-8", compression="gzip") 支持to_latex#中的短标题和表格位置 DataFrame.to_latex()现在允许指定浮动表位置(GH 35281)和短标题(GH 36267)。 添加了关键字position来设置位置。 In [5]: data = pd.DataFrame({'a': [1, 2], 'b': [3, 4]}) In [6]: table = data.to_latex(position='ht') In [7]: print(table) \begin{table}[ht] \begin{tabular}{lrr} \toprule & a & b \\ \midrule 0 & 1 & 3 \\ 1 & 2 & 4 \\ \bottomrule \end{tabular} \end{table} 关键字的使用caption已得到扩展。除了将单个字符串作为参数之外,还可以选择提供一个元组 来添加短标题宏。(full_caption, short_caption) In [8]: data = pd.DataFrame({'a': [1, 2], 'b': [3, 4]}) In [9]: table = data.to_latex(caption=('the full long caption', 'short caption')) In [10]: print(table) \begin{table} \caption[short caption]{the full long caption} \begin{tabular}{lrr} \toprule & a & b \\ \midrule 0 & 1 & 3 \\ 1 & 2 & 4 \\ \bottomrule \end{tabular} \end{table} 更改read_csv和read_table# 的默认浮动精度 对于 C 解析引擎,这些方法read_csv()和read_table()之前默认的解析器可能会在精度的最后一位方面稍微错误地读取浮点数。该选项floating_precision="high"始终可以避免此问题。从这个版本开始,默认是通过 floating_precision=None与高精度解析器相对应来使用更准确的解析器,而新选项则 floating_precision="legacy"使用旧解析器。默认情况下更改为使用更高精度解析器应该不会对性能产生影响。 (GH 17154) 浮点数据的实验性可空数据类型# 我们添加了Float32Dtype/Float64Dtype和FloatingArray.这些是专用于浮点数据的扩展数据类型,可以保存 pd.NA缺失值指示符(GH 32265、GH 34307)。 虽然默认浮点数据类型已经支持使用 缺失值np.nan,但这些新数据类型使用pd.NA(及其相应的行为)作为缺失值指示符,与现有的可为空整数 和布尔数据类型一致。 np.nan和的行为pd.NA不同的一个示例是比较运算: # the default NumPy float64 dtype In [11]: s1 = pd.Series([1.5, None]) In [12]: s1 Out[12]: 0 1.5 1 NaN dtype: float64 In [13]: s1 > 1 Out[13]: 0 True 1 False dtype: bool # the new nullable float64 dtype In [14]: s2 = pd.Series([1.5, None], dtype="Float64") In [15]: s2 Out[15]: 0 1.5 1 <NA> dtype: Float64 In [16]: s2 > 1 Out[16]: 0 True 1 <NA> dtype: boolean 有关使用缺失值指示符时的行为的更多详细信息,请参阅NA 语义文档部分。pd.NA 如上所示,可以使用“Float64”或“Float32”字符串指定数据类型(大写以区别于默认的“float64”数据类型)。或者,您也可以使用 dtype 对象: In [17]: pd.Series([1.5, None], dtype=pd.Float32Dtype()) Out[17]: 0 1.5 1 <NA> dtype: Float32 使用提供浮点结果的现有整数或布尔可为空数据类型的操作现在也将使用可为空浮点数据类型 ( GH 38178 )。 警告 实验性:新的浮动数据类型目前处于实验性阶段,它们的行为或 API 可能仍会在没有警告的情况下发生变化。特别是有关 NaN(与 NA 缺失值不同)的行为可能会发生变化。 聚合时保留索引/列名称# 当使用concat()或DataFrame构造函数进行聚合时,pandas 现在将尽可能尝试保留索引和列名称(GH 35847)。如果所有输入共享一个通用名称,则该名称将分配给结果。当输入的名称不全部一致时,结果将是未命名的。这是保留索引名称的示例: In [18]: idx = pd.Index(range(5), name='abc') In [19]: ser = pd.Series(range(5, 10), index=idx) In [20]: pd.concat({'x': ser[1:], 'y': ser[:-1]}, axis=1) Out[20]: x y abc 1 6.0 6.0 2 7.0 7.0 3 8.0 8.0 4 9.0 NaN 0 NaN 5.0 也是如此MultiIndex,但逻辑是逐级单独应用的。 GroupBy直接支持EWM操作# DataFrameGroupBy现在直接支持指数加权窗口操作(GH 16037)。 In [21]: df = pd.DataFrame({'A': ['a', 'b', 'a', 'b'], 'B': range(4)}) In [22]: df Out[22]: A B 0 a 0 1 b 1 2 a 2 3 b 3 In [23]: df.groupby('A').ewm(com=1.0).mean() Out[23]: B A a 0 0.000000 2 1.333333 b 1 1.000000 3 2.333333 另外还mean支持通过Numba使用engine和engine_kwargs参数执行。 Numba 必须作为可选依赖项安装才能使用此功能。 其他增强功能# 向, , , ( GH 9605 )添加了day_of_week(兼容性别名dayofweek)属性TimestampDatetimeIndexPeriodPeriodIndex 向, , , ( GH 9605 )添加了day_of_year(兼容性别名dayofyear)属性TimestampDatetimeIndexPeriodPeriodIndex 添加set_flags()用于在系列或数据帧上设置表范围标志(GH 28394) DataFrame.applymap()现在支持na_action(GH 23803) Index对象数据类型支持除法和乘法(GH 34160) io.sql.get_schema()现在支持schema关键字参数,该参数会将架构添加到创建表语句中(GH 28486) DataFrame.explode()现在Series.explode()支持集合爆炸(GH 35614) DataFrame.hist()现在支持时间序列(日期时间)数据(GH 32590) Styler.set_table_styles()现在允许直接设置行和列的样式并且可以链接(GH 35607) Styler现在允许直接将 CSS 类名添加到各个数据单元格 ( GH 36159 ) Rolling.mean()并Rolling.sum()使用卡汉求和来计算平均值以避免数值问题(GH 10319,GH 11645,GH 13254,GH 32761,GH 36031) DatetimeIndex.searchsorted()、TimedeltaIndex.searchsorted()、PeriodIndex.searchsorted()和Series.searchsorted()与类似日期时间的数据类型现在将尝试将字符串参数(类似列表和标量)转换为匹配的类似日期时间类型(GH 36346) 添加了方法IntegerArray.prod()、、IntegerArray.min()和IntegerArray.max()( GH 33790 ) 现在,在可能的情况下,在具有扩展类型的 a 上调用 NumPy ufuncDataFrame会保留扩展类型 ( GH 23743 ) 现在,在多个对象上调用二进制输入 NumPy ufunc 可以DataFrame对齐,从而匹配二进制运算和 ufunc 的行为Series( GH 23743 )。此更改已在 pandas 1.2.1 中恢复,并且不推荐使用不对齐 DataFrame 的行为,请参阅1.2.1 发行说明。 在可能的情况下RangeIndex.difference(),RangeIndex.symmetric_difference()将返回RangeIndex而不是Int64Index(GH 36564) DataFrame.to_parquet()现在支持MultiIndex镶木地板格式的列(GH 34777) read_parquet()获得了use_nullable_dtypes=True使用可空数据类型的选项,这些数据类型pd.NA在可能的情况下用作生成的 DataFrame 的缺失值指示符(默认为False,并且仅适用于engine="pyarrow")(GH 31242) 添加Rolling.sem()和Expanding.sem()来计算平均值的标准误差 ( GH 26476 ) Rolling.var()并Rolling.std()使用卡汉求和和韦尔福德方法来避免数值问题(GH 37051) DataFrame.corr()并DataFrame.cov()使用韦尔福德方法来避免数值问题(GH 37448) DataFrame.plot()现在识别xlabeland类型ylabel图的参数( GH 37001 )scatterhexbin DataFrame现在支持该divmod操作(GH 37165) DataFrame.to_parquet()现在,当不传递参数时返回一个bytes对象( GH 37105)path Rolling现在支持closed固定窗口的参数(GH 34315) DatetimeIndex现在支持withSeries或datetime64dtypes ( GH 37436 )datetime64tzstd Windowwin_type现在通过灵活的关键字参数支持支持所有 Scipy 窗口类型( GH 34556 ) testing.assert_index_equal()现在有一个check_order参数允许以不区分顺序的方式检查索引(GH 37478) read_csv()支持压缩文件的内存映射(GH 37621) 添加对min_count关键字 forDataFrame.groupby()和DataFrame.resample()for 函数min, max, firstand last( GH 37821 , GH 37768 )的支持 DataFrame.merge()改进给出无效合并列定义时的错误报告( GH 16228) 通过实施卡汉求和提高Rolling.skew()、Rolling.kurt()、Expanding.skew()和的数值稳定性 ( GH 6929 )Expanding.kurt() DataFrameGroupBy改进了对a的子集列的错误报告axis=1( GH 37725 ) 和( GH 5401 )cross的实施方法DataFrame.merge()DataFrame.join() 当使用/调用read_csv()、read_sas()和时,它们可以在语句中使用,因为它们返回上下文管理器(GH 38225)read_json()chunksizeiteratorwith 增强了可用于设置 Excel 导出样式的命名颜色列表,启用所有 CSS4 颜色 ( GH 38247 ) 值得注意的错误修复# 这些错误修复可能会带来显着的行为变化。 数据帧减少的一致性# DataFrame.any()现在DataFrame.all()确定bool_only=True是否逐列排除 object-dtype 列,而不是检查是否所有object-dtype 列都可以被视为布尔值。 这可以防止病态行为,即对列的子集应用归约可能会导致更大的系列结果。参见(GH 37799)。 In [24]: df = pd.DataFrame({"A": ["foo", "bar"], "B": [True, False]}, dtype=object) In [25]: df["C"] = pd.Series([True, True]) 以前的行为: In [5]: df.all(bool_only=True) Out[5]: C True dtype: bool In [6]: df[["B", "C"]].all(bool_only=True) Out[6]: B False C True dtype: bool 新行为: In [26]: In [5]: df.all(bool_only=True) Out[26]: C True dtype: bool In [27]: In [6]: df[["B", "C"]].all(bool_only=True) Out[27]: C True dtype: bool 其他 DataFrame 缩减numeric_only=None也将避免这种病态行为(GH 37827): In [28]: df = pd.DataFrame({"A": [0, 1, 2], "B": ["a", "b", "c"]}, dtype=object) 以前的行为: In [3]: df.mean() Out[3]: Series([], dtype: float64) In [4]: df[["A"]].mean() Out[4]: A 1.0 dtype: float64 新行为: In [3]: df.mean() Out[3]: A 1.0 dtype: float64 In [4]: df[["A"]].mean() Out[4]: A 1.0 dtype: float64 此外,DataFrame 的缩减numeric_only=None现在将与其对应的 Series 一致。特别是,对于 Series 方法引发的缩减TypeError,DataFrame 缩减现在将考虑该列非数字,而不是转换为可能具有不同语义的 NumPy 数组(GH 36076、 GH 28949、GH 21020)。 In [29]: ser = pd.Series([0, 1], dtype="category", name="A") In [30]: df = ser.to_frame() 以前的行为: In [5]: df.any() Out[5]: A True dtype: bool 新行为: In [5]: df.any() Out[5]: Series([], dtype: bool) 增加了 Python 的最低版本# pandas 1.2.0 支持 Python 3.7.1 及更高版本 ( GH 35214 )。 增加了依赖项的最低版本# 更新了一些依赖项的最低支持版本(GH 35214)。如果安装了,我们现在需要: 包裹 最低版本 必需的 改变了 麻木 1.16.5 X X 皮茨 2017.3 X X python-dateutil 2.7.3 X 瓶颈 1.2.1 数值表达式 2.6.8 X pytest(开发) 5.0.1 X mypy(开发) 0.782 X 对于可选库,一般建议使用最新版本。下表列出了当前在 pandas 开发过程中测试的每个库的最低版本。低于最低测试版本的可选库可能仍然有效,但不被视为受支持。 包裹 最低版本 改变了 美丽汤4 4.6.0 快速镶木地板 0.3.2 FS规范 0.7.4 GCSFS 0.6.0 lxml 4.3.0 X 绘图库 2.2.3 X 努巴 0.46.0 开放式pyxl 2.6.0 X 皮箭头 0.15.0 X pymysql 0.7.11 X pytables 3.5.1 X s3fs 0.4.0 scipy 1.2.0 sqlalchemy 1.2.8 X 阵列 0.12.3 X xlrd 1.2.0 X XLSX作家 1.0.2 X xlwt 1.3.0 X pandas-GBQ 0.12.0 有关更多信息,请参阅依赖项和可选依赖项。 其他 API 更改# 对于类似日期时间的子Series.sort_values()类,按降序排序现在是稳定的。当对多个列上的 DataFrame 进行排序、使用产生重复项的键函数进行排序或在使用 时请求排序索引时,这将影响排序顺序。使用 时,缺失值的计数不再一定位于重复计数列表的最后。相反,它的位置对应于原始系列中的位置。当用于类似日期时间的子类时,NaT 忽略该参数并排序到开头。现在他们尊重,默认是,与其他子类相同(GH 35992)Index.sort_values()IndexIndex.sort_values()Series.value_counts()Index.sort_values()Indexna_positionna_positionlastIndex 将无效值传递fill_value给Categorical.take()、DatetimeArray.take()、TimedeltaArray.take()或PeriodArray.take()现在会引发 aTypeError而不是ValueError( GH 37733 ) 现在将无效传递fill_value给Series.shift()aCategoricalDtype会引发 aTypeError而不是 a ValueError( GH 37733 ) 将无效值传递给IntervalIndex.insert()orCategoricalIndex.insert()现在会引发 aTypeError而不是 a ValueError( GH 37733 ) CategoricalIndex尝试使用无效的a 重新索引系列fill_value现在会引发 aTypeError而不是 a ValueError( GH 37733 ) CategoricalIndex.append()包含非类别值的索引现在将进行转换而不是提升TypeError(GH 38098) 弃用# 和( GH 35626 )inplace中已弃用的参数MultiIndex.set_codes()MultiIndex.set_levels() 已弃用所有子类dtype方法的参数。使用该方法来更改 dtype ( GH 35853 )copy()Indexastype() 已弃用的参数levels和codes。MultiIndex.copy()使用set_levels()和set_codes()方法代替(GH 36685) 日期解析器函数parse_date_time()、parse_date_fields()和from已弃用parse_all_fields(),并将在未来版本中删除;使用(GH 35741)generic_parser()pandas.io.date_convertersto_datetime() DataFrame.lookup()已弃用并将在未来版本中删除,请使用DataFrame.melt()andDataFrame.loc()代替 ( GH 35224 ) 该方法Index.to_native_types()已被弃用。使用.astype(str)替代(GH 28867) 不推荐使用DataFrame单个类似日期时间的字符串对行进行索引df[string](考虑到是对行进行索引还是选择列),df.loc[string]而是使用(GH 36179) 已弃用Index.is_all_dates()(GH 27744) 在未来的版本中,regexfor的默认值Series.str.replace()将从 更改为True。False此外,设置时,单字符正则表达式不会被视为文字字符串( GH 24804)regex=True DataFrame已弃用和之间的比较操作的自动对齐Series,例如(GH 28759)frame, ser = frame.align(ser, axis=1, copy=False)frame == ser Rolling.count()withmin_periods=None将默认为未来版本中窗口的大小(GH 31302) 现在已弃用在 DataFrame 上使用“外部”ufunc 返回 4d ndarray。首先转换为 ndarray ( GH 23743 ) DatetimeIndex已弃用 tz-aware 上使用朴素对象的切片索引datetime,以匹配标量索引行为 ( GH 36148 ) Index.ravel()返回 anp.ndarray已被弃用,将来这将返回同一索引的视图(GH 19956) to_timedelta()不建议使用( GH 36666 )中使用 'M'、'Y' 或 'y' 表示单位的字符串 Index方法&、|和分别^表现为集合运算Index.intersection()、Index.union()和Index.symmetric_difference(),已被弃用,并且将来将表现为逐点布尔运算匹配Series行为。使用命名集方法代替(GH 36758) Categorical.is_dtype_equal()并CategoricalIndex.is_dtype_equal()已弃用,将在未来版本中删除(GH 37545) Series.slice_shift()已DataFrame.slice_shift()弃用,请使用Series.shift()或DataFrame.shift()代替 ( GH 37601 ) 不推荐对具有不在索引中的键的无序对象进行部分切片DatetimeIndex,并将在未来版本中删除(GH 18531) 关键字howinPeriodIndex.astype()已弃用,并将在未来版本中删除,请改用index.to_timestamp(how=how)( GH 37982 ) Index.asi8()已弃用Index除DatetimeIndex、TimedeltaIndex和PeriodIndex( GH 37877 )之外的子类 参数inplace已Categorical.remove_unused_categories()弃用,并将在未来版本中删除 ( GH 37643 ) 参数null_counts已DataFrame.info()弃用并由 代替show_counts。它将在未来版本中删除(GH 37999) 在未对齐的 DataFrame 上调用 NumPy ufunc 在非对齐 DataFrame 上调用 NumPy ufuncs 更改了 pandas 1.2.0 中的行为(在调用 ufunc 之前对齐输入),但此更改在 pandas 1.2.1 中恢复。现在不推荐使用不对齐的行为,请参阅1.2.1 发行说明以了解更多详细信息。 性能改进# 使用 dtypestr或StringDtype从具有许多字符串元素的数组创建 DataFrame 或 Series 时的性能改进(GH 36304、GH 36317、GH 36325、GH 36432、GH 37371) 发动机的性能改进DataFrameGroupBy.agg()(GH 35759)SeriesGroupBy.agg()numba Series.map()从大型字典创建时的性能改进( GH 34717) 发动机的性能改进DataFrameGroupBy.transform()( GH 36240 )SeriesGroupBy.transform()numba Styleruuid 方法被更改以压缩网络上的数据传输,同时保持相当低的表冲突概率(GH 36345) to_datetime()列的非 ns 时间单位的性能改进float dtype(GH 20445) 设置值的性能改进IntervalArray( GH 36310 ) 内部索引方法_shallow_copy()现在使新索引和原始索引共享缓存属性,避免再次创建这些属性(如果在任一索引上创建)。这可以加快依赖于创建现有索引副本的操作(GH 36840) RollingGroupby.count()( GH 35625 )的性能改进 固定窗口的性能略有下降Rolling.min()(GH 36567)Rolling.max() 在 python 3.8+ 中DataFrame.to_pickle()使用时减少了峰值内存使用量( GH 34244)protocol=5 dir当对象有许多索引标签时,调用速度更快,例如dir(ser)(GH 37450) ExpandingGroupby( GH 37064 )的性能改进 ( GH 8628 )的性能Series.astype()改进DataFrame.astype()Categorical DataFrame.groupby()for float dtype( GH 28303 )中的性能改进,底层哈希函数的更改可能会导致基于浮点的索引排序顺序发生变化(例如Index.value_counts()) pd.isin()具有超过 1e6 个元素的输入的性能改进( GH 36611 ) DataFrame.__setitem__()类似列表的索引器的性能改进( GH 37954) read_json()现在,当指定块大小时,可以避免将整个文件读入内存(GH 34548) Bug修复# 分类# Categorical.fillna()将始终返回一个副本,验证传递的填充值,无论是否有需要填充的 NA,并且不允许将 anNaT作为数字类别的填充值 ( GH 36530 ) Categorical.__setitem__()尝试设置元组值时错误引发的错误( GH 20439) 错误地CategoricalIndex.equals()将非类别条目转换为np.nan( GH 37667 ) 错误地CategoricalIndex.where()将非类别条目设置为np.nan而不是提升TypeError(GH 37977) tz 感知Categorical.to_numpy()类别中的错误错误地删除时区信息而不是转换为对象 dtype ( GH 38136 )np.array(categorical)datetime64 类似日期时间# 当原始列中不存在该列时,DataFrame.combine_first()会将其他类似日期时间的列转换为整数的错误(GH 28481)DataFrameDataFrame 使用只读支持数组引发DatetimeArray.datea 的错误( GH 33530)ValueError 比较中的错误NaT未能引发TypeError无效的不平等比较(GH 35046) DateOffset当输入值超出正常范围(例如,月份=12)时,从pickle文件重建的属性与原始对象不同的错误( GH 34511) 不接受对象或使用 tz 感知的天真对象DatetimeIndex.get_slice_bound()时出现的错误(GH 35690)datetime.dateTimestampDatetimeIndex 不接受对象的DatetimeIndex.slice_locs()错误(GH 34077)datetime.date DatetimeIndex.searchsorted()、TimedeltaIndex.searchsorted()、PeriodIndex.searchsorted()、 和Series.searchsorted()withdatetime64或timedelta64dtype值Period放置中的错误NaT与 NumPy 不一致(GH 36176、GH 36254) DatetimeArray、TimedeltaArray和PeriodArray方法__setitem__将字符串数组转换为类似日期时间的标量但不是标量字符串时不一致( GH 36261 ) DatetimeArray.take()错误地允许fill_value不匹配的时区的错误( GH 37356) DatetimeIndex.shift移动空索引时错误地引发错误( GH 14811) Timestamptz-aware 和 tz-naive 对象之间的比较DatetimeIndex现在遵循标准库datetime行为,返回True/ Falsefor !=/==并提高不等式比较(GH 28507) 错误DatetimeIndex.equals()并TimedeltaIndex.equals()错误地将int64索引视为相等(GH 36744) Series.to_json(), DataFrame.to_json(),现在在东方结构为( GH 35973 )read_json()时实现时区解析table astype()现在尝试直接从字符串( GH 35973)推断时区转换为datetime64[ns, tz]object 空索引或系列上的错误TimedeltaIndex.sum()和Series.sum()dtype返回而不是(GH 31751)timedelta64NaTTimedelta(0) DatetimeArray.shift()错误地允许fill_value不匹配的时区的错误( GH 37299) BusinessDay将非零值添加offset到非标量 other 时出现错误 ( GH 37457 ) to_datetime()只读数组错误地引发错误( GH 34857) Series.isin()dtype存在错误datetime64[ns],并且DatetimeIndex.isin()错误地将整数转换为日期时间 ( GH 36621 ) dtype 存在错误,并且Series.isin()未能考虑tz-aware 和 tz-naive 日期时间总是不同的(GH 35728)datetime64[ns]DatetimeIndex.isin() Series.isin()dtype存在错误PeriodDtype,并且PeriodIndex.isin()未能考虑不同的参数,PeriodDtype因为总是不同的(GH 37528) 构造函数中的错误Period现在可以正确处理参数中的纳秒value(GH 34621和GH 17053) 时间增量# TimedeltaIndex、Series和dtypesDataFrame的地板除法以及分母中的错误 ( GH 35529 )timedelta64NaT Timedelta和to_datetime()( GH 29773、GH 36204 )中 ISO 8601 持续时间的解析错误 to_timedelta()只读数组错误地引发错误( GH 34857) Timedelta当字符串输入的精度高于纳秒时,错误地截断为字符串输入的亚秒部分(GH 36738) 时区# 错误是针对有效输入date_range()引发的(GH 35297)AmbiguousTimeErrorambiguous=False 错误Timestamp.replace()是丢失折叠信息(GH 37610) 数字# to_numeric()浮点精度不正确的错误(GH 31364) 错误地使用DataFrame.any()并axis=1忽略bool_only=True关键字bool_only(GH 32432) 将NumPy 数组与标量进行比较时引发Series.equals()a 的错误( GH 35267 )ValueError Series两个系列各自具有不同时区的错误DatetimeIndex,在执行算术运算时这些索引被错误地更改(GH 33671) 与复杂数字类型pandas.testing一起使用时模块函数中的错误( GH 28235)check_exact=False DataFrame.__rmatmul__()错误处理报告转置形状中的错误( GH 21581) Flex 算术方法中的错误,其中使用,或Series操作时的结果名称不正确(GH 36760)listtuplenp.ndarray 与和对象IntegerArray相乘时的错误( GH 36870 )timedeltanp.timedelta64 与元组相比的错误MultiIndex错误地将元组视为类似数组(GH 21517) DataFrame.diff()数据类型错误datetime64,包括NaT无法NaT正确填充结果的值 ( GH 32441 ) 算术操作中的错误DataFrame错误地接受关键字参数(GH 36843) 与不返回系列IntervalArray的比较中的错误( GH 36908)Series DataFrame允许对类似数组的列表进行算术运算且结果未定义的错误。行为改为饲养ValueError(GH 36702) 错误DataFrame.std()与timedelta64dtype 和skipna=False( GH 37392 ) dtype 和DataFrame.min()( GH 36907 )DataFrame.max()中的错误datetime64skipna=False 混合数据类型中的错误错误地DataFrame.idxmax()引发(GH 38195)DataFrame.idxmin()TypeError 转换# DataFrame.to_dict()现在的错误orient='records'返回类似日期时间列的Python本机日期时间对象(GH 21256) 在存在值的情况Series.astype()下从转换string为引发的错误(GH 37626)floatpd.NA 字符串# 错误Series.to_string(), DataFrame.to_string(), 并DataFrame.to_latex()添加前导空格index=False( GH 24980 ) 尝试转换仅包含数字字符串的字符串数据类型系列时to_numeric()引发的错误和(GH 37262)TypeErrorNA 间隔# DataFrame.replace()数据类型转换为对象数据类型的Series.replace()错误(GH 34871)Interval 错误地使用IntervalIndex.take()负索引和fill_value=None(GH 37330) 类似IntervalIndex.putmask()日期时间的 dtype 错误地转换为对象 dtype ( GH 37968 ) IntervalArray.astype()错误地删除对象的 dtype 信息的错误CategoricalDtype( GH 37984 ) 索引# 错误地在非类似日期的字符串上PeriodIndex.get_loc()引发错误,而不是在、和( GH 34240 )中导致类似的错误ValueErrorKeyErrorSeries.__getitem__()Series.__contains__()Series.loc.__getitem__() 错误在于Index.sort_values(),当传递空值时,该方法会通过尝试比较缺失值而不是将它们推到排序顺序的末尾而中断(GH 35584) 返回数组的错误Index.get_indexer()以及返回数组的Index.get_indexer_non_unique()位置(GH 36359)int64intp DataFrame.sort_index()在单级索引上作为列表传递的参数升序给出错误结果的错误( GH 32334) Bug 错误地在 dtype的级别中DataFrame.reset_index()错误地提高了带有缺失值ValueError的输入(GH 24206)MultiIndexCategorical 在类似日期时间的值上使用布尔掩码进行索引时出现错误,有时会返回视图而不是副本(GH 36210) DataFrame.__getitem__()列和数字索引器DataFrame.loc.__getitem__()中的错误( GH 26490)IntervalIndex Series.loc.__getitem__()使用非唯一索引器MultiIndex和空列表索引器出现错误( GH 13691) Series在 a或DataFrameaMultiIndex以及名为"0"( GH 37194 )的级别上建立索引时出现错误 Series.__getitem__()使用无符号整数数组作为索引器时出现错误,给出不正确的结果或段错误而不是提升KeyError(GH 37218) 错误地Index.where()将数值转换为字符串(GH 37591) DataFrame.loc()当索引器是步长为负的切片时返回空结果的错误( GH 38071) 当索引为dtype 并且给定的数字标签位于索引中时出现错误Series.loc()并引发 ( GH 26491 )DataFrame.loc()object 当从( GH 27104 )应用于单个级别时,DataFrame.loc()返回的请求键加上缺失值存在错误locMultiIndex 使用包含 NA 值的类似列表的索引器对 aSeries或DataFramea进行索引时出现错误 ( GH 37722 )CategoricalIndex DataFrame.loc.__setitem__()使用混合数据类型扩展空的错误DataFrame(GH 37932) DataFrame.xs()忽略列中的错误droplevel=False(GH 19056) DataFrame.reindex()错误地引发IndexingError空 DataFrame 且不带toleranceorNone的错误method="nearest"(GH 27315) 在使用类似列表的索引器进行索引Series时出现错误,该索引器包含索引中但不在索引本身中的元素,无法引发(GH 37901)DataFrameCategoricalIndexcategoriesKeyError 将布尔标签插入DataFrame数字列Index时错误地转换为整数(GH 36319) 错误DataFrame.iloc()和Series.iloc()对齐对象__setitem__(GH 22046) MultiIndex.drop()如果部分找到标签,则不会引发错误( GH 37820) 当剩余级别给出缺少的组合时,错误DataFrame.loc()没有出现( GH 19556)KeyErrorslice(None) 当给出非整数切片来从(GH 25165,GH 24263)中选择值时DataFrame.loc()引发错误TypeErrorMultiIndex 当索引为一级时Series.at()返回Series一个元素而不是标量时出现错误( GH 38053)MultiIndex DataFrame.loc()当索引器的顺序与过滤器的顺序不同时,返回和分配元素的顺序错误(MultiIndexGH 31330、GH 34603) 当列只有一层时出现错误DataFrame.loc()并DataFrame.__getitem__()引发错误( GH 29749)KeyErrorMultiIndex 错误插入Series.__getitem__()并DataFrame.__getitem__()升起空白KeyError,而不会丢失IntervalIndex( GH 27365 )的键 当新标签不在索引类别中时,在 a 上设置新标签DataFrame或错误地提升Series时出现错误( GH 38098)CategoricalIndexTypeError 插入类似列表或相等长度的系列时出现错误并引发Series.loc()错误Series.iloc()(GH 37748,GH 37486)ValueErrornp.arraylisttupleobject 错误地将Series.loc()系列Series.iloc()的所有值设置object为类似列表的值ExtensionArray,而不是插入它(GH 38271) 丢失的# 错误现在可以正确处理( GH 35014 )SeriesGroupBy.transform()的缺失值dropna=False 当同时存在值和缺失值时, Series.nunique()with中的dropna=True错误返回不正确的结果( GH 37566)NANone Series.interpolate()使用方法时kwarglimit_area和limit_direction没有效果的pad错误( backfillGH 31048 ) 多重索引# 与带有消息的加注DataFrame.xs()一起使用时出现错误(GH 35301)IndexSliceTypeError"Expected label or tuple of labels" 索引中的值DataFrame.reset_index()错误会引发消息(GH 36541)NaTValueError"cannot convert float NaN to integer" 与包含字符串和值DataFrame.combine_first()一起使用时会引发错误(GH 36562)MultiIndexNaNTypeError 当不存在的键作为输入给出时,MultiIndex.drop()删除值中的错误( GH 18853)NaN MultiIndex.drop()当索引有重复且未排序时,删除比预期更多的值的错误( GH 33494) 输入/输出# read_sas()失败时不再泄漏资源(GH 35566) 当使用文件名并包含( GH 35058 )来调用它时,会出现错误DataFrame.to_csv()并Series.to_csv()导致ValueErrormodeb 错误read_csv()没有float_precision='round_trip'处理decimal和thousands参数(GH 35365) to_pickle()并read_pickle()正在关闭用户提供的文件对象(GH 35679) to_csv()始终将压缩参数传递'gzip'给gzip.GzipFile(GH 28103) to_csv()不支持没有文件名的二进制文件对象的 zip 压缩(GH 35058) to_csv()并且read_csv()不尊重compression和encoding对于内部转换为类文件对象的类路径对象(GH 35677,GH 26124,GH 32392) DataFrame.to_pickle()、Series.to_pickle()、 且不read_pickle()支持文件对象压缩(GH 26237、GH 29054、GH 29570) 错误LongTableBuilder.middle_separator()是在 LaTeX 文档的表列表中复制 LaTeX longtable 条目(GH 34360) 如果第一行中存在多个项目且第一个元素以 BOM 开头,则会read_csv()出现截断数据的错误( GH 36343 )engine='python' 已删除private_key,verbose因为它们在(GH 34654、GH 30200)read_gbq()中不再受支持pandas-gbq 将最低 pytables 版本提升至 3.5.1 以避免出现ValueErrorin read_hdf()( GH 24839 ) 错误发生read_table()和read_csv()何时delim_whitespace=True(sep=defaultGH 36583) DataFrame.to_json()与和Series.to_json()一起使用时的错误记录的最后一行未附加“换行符”(GH 36888)lines=Trueorient='records' read_parquet()固定偏移时区的错误。无法识别时区的字符串表示形式(GH 35997、GH 36004) DataFrame.to_html()、中的错误DataFrame.to_string(),并DataFrame.to_latex()忽略还指定的na_rep参数( GH 9046、GH 13828)float_format 复数输出渲染中的错误显示过多尾随零 ( GH 36799 ) 导出具有固定 HDF5 存储的 dtypes的空 DataFrame 时HDFStore抛出错误( GH 20594 )TypeErrordatetime64[ns, tz] 错误是在使用固定 HDF5 存储HDFStore导出具有 dtypes 的系列时丢失时区信息( GH 20594 )datetime64[ns, tz] read_csv()engine="c"在请求时关闭用户提供的二进制文件句柄encoding(GH 36980) 错误DataFrame.to_hdf()是没有删除丢失的行dropna=True(GH 35719) 错误是在向参数提供参数时read_html()引发 a ( GH 37705 )TypeErrorpathlib.Pathio DataFrame.to_excel()、、、现在支持写入 fsspec URL Series.to_excel(),例如 S3 和 Google Cloud Storage ( GH 33987 )DataFrame.to_markdown()Series.to_markdown() 错误read_fwf()没有skip_blank_lines=True跳过空白行(GH 37758) read_json()使用with dtype=FalsetoNaN而不是None( GH 28501 )解析缺失值 read_fwf()推断压缩与compression=None其他功能不一致read_*(GH 37909) DataFrame.to_html()忽略列formatters的参数ExtensionDtype(GH 36525) 将最低 xarray 版本提升至 0.12.3,以避免引用已删除的Panel类(GH 27101、GH 37983) DataFrame.to_csv()正在重新打开也实现os.PathLike(GH 38125)的类似文件的句柄 将缺失值的切片转换pyarrow.Table为 DataFrame 时出现错误 ( GH 38525 ) 当列名称包含百分号时read_sql_table()引发错误( GH 37517)sqlalchemy.exc.OperationalError 时期# DataFrame.replace()数据类型转换为对象数据类型的Series.replace()错误(GH 34871)Period 绘图# 错误在于DataFrame.plot()旋转 xticklabels 时subplots=True,即使 x 轴不是不规则时间序列(GH 29460) DataFrame.plot()关键字中的标记字母style有时会导致错误ValueError( GH 21003 ) 错误DataFrame.plot.bar()以及Series.plot.bar()其中的刻度位置是按值顺序分配的,而不是使用数字的实际值或字符串的智能排序(GH 26186、GH 11465)。此修复已在 pandas 1.2.1 中恢复,请参阅1.2.1 中的新增功能(2021 年 1 月 20 日) 孪生轴正在丢失刻度标签,这种情况只会发生在“外部”共享轴的最后一行或一列之外的所有轴上(GH 33819) 当 Series 或 DataFrame 通过固定频率的 a 进行索引并且 x 轴下限大于上限时,Series.plot()会DataFrame.plot()抛出错误( GH 37454)ValueErrorTimedeltaIndex DataFrameGroupBy.boxplot()何时subplots=False会引发错误KeyError(GH 16748) 当没有传递参数时,错误DataFrame.plot()并Series.plot()覆盖 matplotlib 的共享 y 轴行为( GH 37942)sharey 错误是用列DataFrame.plot()提出了一个(GH 32073)TypeErrorExtensionDtype 造型器# Styler.render()由于属性中的格式错误,HTML中的错误生成不正确rowspan,它现在与 w3 语法匹配(GH 38234) 分组/重新采样/滚动# DataFrameGroupBy.count()当分组SeriesGroupBy.sum()到多个.现在返回(GH 35028)NaNCategoricals0 如果分组轴有重复的条目,DataFrameGroupBy.apply()有时会抛出错误(GH 16646)ValueError 当从重新采样到 过渡到夏令时 (DST)时DataFrame.resample()会引发错误( GH 35219)ValueError"D""24H" DataFrame.groupby()将方法与方法结合DataFrame.resample()并DataFrame.interpolate()引发时出现错误TypeError(GH 35325) DataFrameGroupBy.apply()如果之前调用了另一个 groupby 方法,则将从输出列中删除无害分组列的错误.apply(GH 34656) DataFrameGroupBy当在(例如)上对列进行子集化时,df.groupby('a')[['b']])会将属性axis, dropna, group_keys, level, mutated, sort, 和重置squeeze为其默认值(GH 9959) 当无法推断组索引的频率时无法DataFrameGroupBy.tshift()引发错误( GH 35937)ValueError 错误DataFrame.groupby()并不总是维护any, all, bfill, ffill, shift( GH 29764 )的列索引名称 在( GH 35889 )时DataFrameGroupBy.apply()引发组错误的错误np.nandropna=False Rolling.sum()当数据类型在浮点和整数之间混合时返回错误值并且(axis=1GH 20649,GH 35596) 作为窗口Rolling.count()返回的错误,并且窗口中仅缺少值(GH 35579)np.nanFixedForwardWindowIndexermin_periods=0 Rolling使用PeriodIndex( GH 34225 )时产生不正确窗口大小的错误 错误DataFrameGroupBy.ffill()以及DataFrameGroupBy.bfill()组NaN返回填充值而不是NaN时间的错误dropna=True(GH 34725) 指定参数时引发RollingGroupby.count()a 的错误( GH 35869 )ValueErrorclosed DataFrameGroupBy.rolling()使用部分居中的窗口返回错误值的错误( GH 36040) DataFrameGroupBy.rolling()包含 .time 的时间感知窗口返回错误值的错误NaN。ValueError由于窗口现在不单调而引发( GH 34617) 大于( GH 37156 )时未引发Rolling.__iter__()a 的错误ValueErrormin_periodswindow 使用Rolling.var()代替可以避免当仍在浮点精度范围内时而不是在浮点精度范围内时Rolling.std()出现的数值问题( GH 31286)Rolling.corr()Rolling.var()Rolling.std() 当值是类型时出现错误DataFrameGroupBy.quantile()并Resampler.quantile()引发(GH 29485)TypeErrorTimedelta 错误Rolling.median()并为具有非单调窗口起点或终点的子类Rolling.quantile()返回错误值( GH 37153)BaseIndexer 在单列上分组时从结果中DataFrame.groupby()删除组中的错误( GH 35646,GH 35542)nandropna=False 与( GH 9772 )一起使用时DataFrameGroupBy.head(), 、DataFrameGroupBy.tail()、SeriesGroupBy.head()和中的错误SeriesGroupBy.tail()会引发axis=1 与转换内核(例如“shift”)DataFrameGroupBy.transform()一起使用时会引发错误( GH 36308)axis=1 DataFrameGroupBy.resample()使用sum 时产生的错误.agg与仅调用不同的结果.sum(GH 33548) 当返回与原始框架相同的轴时,组DataFrameGroupBy.apply()上的值被删除的错误( GH 38227)nan 按列分组时DataFrameGroupBy.quantile()无法处理类似数组的错误( GH 33795)q DataFrameGroupBy.rank()with或 period dtype中的错误datetime64tz错误地将结果转换为这些 dtype,而不是返回float64dtype ( GH 38187 ) 重塑# 错误DataFrame.crosstab()是对具有重复行名称、重复列名称或行和列标签之间重复名称的输入返回不正确的结果(GH 22529) DataFrame.pivot_table()当aggfunc='count'以.aggfunc='sum'NaNCategorical现在返回0(GH 31422) 在某些情况下不保留输入索引名称的错误concat()和构造函数( GH 13475)DataFrame 使用带有and 的crosstab()多列时,函数中存在错误(GH 35144)margins=Truenormalize=True DataFrame.stack()空 DataFrame.stack 会引发错误的错误( GH 36113)。现在返回一个带有空 MultiIndex 的空 Series。 错误Series.unstack()。现在,尝试取消堆叠的单级索引的系列将引发ValueError( GH 36113 ) 错误DataFrame.agg()地func={'name':<FUNC>}引发错误TypeError(DataFrame.columns==['Name']GH 36212) Series.transform()当参数func是字典时,错误会给出不正确的结果或引发错误( GH 35811) 当行和列都是多索引时,错误DataFrame.pivot()没有保留列的级别名称( GH 36360)MultiIndex 已传递但未传递时DataFrame.pivot()修改index参数中的错误(GH 37635)columnsvalues 错误DataFrame.join()返回了结果的不确定级别顺序MultiIndex(GH 36910) 错误DataFrame.combine_first()导致与 dtype 的错误对齐以及仅包含string一层(GH 37591)MultiIndexNA merge()修复了与空 DataFrame合并时的回归DatetimeIndex(GH 36895) 当返回类型为(GH 37544)DataFrame.apply()时不设置返回值索引的错误funcdict 和( GH 35382 )的结果中存在错误DataFrame.merge()并返回不一致的排序pandas.merge()how=righthow=left 错误merge_ordered()无法处理类似列表left_by或right_by(GH 35269) merge_ordered()当长度left_by或right_by等于left或的行时返回错误的连接结果的错误right(GH 38166) 当列或列中存在或不存在merge_ordered()元素时,不会引发错误(GH 38167)left_byright_byleftright DataFrame.drop_duplicates()不验证关键字的 bool dtype 的错误ignore_index( GH 38274 ) 扩展数组# DataFrame修复了通过字典实例化设置为标量扩展类型的列被视为对象类型而不是扩展类型的错误( GH 35965) astype()修复了具有相同数据类型并copy=False返回新对象的错误( GH 28488) 修复了将具有多个输出的 NumPy ufunc 应用到IntegerArray返回时的错误None( GH 36913 ) PeriodArray修复了的__init__签名与DatetimeArray和的签名不一致的问题TimedeltaArray(GH 37289) BooleanArray、Categorical、DatetimeArray、FloatingArray、IntegerArray、PeriodArray、TimedeltaArray和的缩减PandasArray现在是仅关键字方法 ( GH 37541 ) 修复了如果对包含类似 nan 的值TypeError进行成员资格检查则错误地引发a 的错误( GH 37867 )ExtensionArray 其他# 当传递无效参数组合时,错误DataFrame.replace()并Series.replace()错误地引发 anAssertionError而不是 a ( GH 36045 )ValueError 数值和字符串DataFrame.replace()中的错误(GH 34789)Series.replace()to_replace Series.abs()修复了系列和数据帧上调用的元数据传播和 ufunc( GH 28283) 错误DataFrame.replace()并错误地从对象数据类型Series.replace()转换( GH 34871)PeriodDtype 修复了当列名称与元数据名称重叠时元数据传播中错误地将 DataFrame 列复制为元数据的错误 ( GH 37037 ) 修复了Series.dt、Series.str访问器、DataFrame.duplicated、DataFrame.stack、DataFrame.unstack、DataFrame.pivot、DataFrame.append、DataFrame.diff和方法中的元数据传播(GH 28283、GH 37381DataFrame.applymap)DataFrame.update DataFrame.__getitem__修复了使用(GH 28283)选择列时的元数据传播 错误在返回时Index.intersection()没有Index失败设置正确的名称Index(GH 38111) RangeIndex.intersection()在某些极端情况下无法在返回值上设置正确名称的错误Index(GH 38197) Index.difference()在某些极端情况下无法在返回值上设置正确名称的错误Index(GH 38268) Index.union()根据操作数是类似列表还是其他列表而表现不同的错误Index(GH 36384) 错误Index.intersection()将不匹配的数字 dtype 转换为objectdtype 而不是最小常见 dtype ( GH 38122 ) 空时IntervalIndex.union()返回错误键入的错误( GH 38282)Index 现在,将具有 2 个或更多维度的数组传递给Series构造函数会引发更具体的数组ValueError,而不是裸露的数组Exception(GH 35744) 错误在dirwheredir(obj)不会显示 pandas 对象实例上定义的属性 ( GH 37173 ) Index.drop()当索引有重复项时引发错误InvalidIndexError(GH 38051) 在某些应该返回的情况下RangeIndex.difference()返回错误(GH 38028)Int64IndexRangeIndex assert_series_equal()修复了将类似日期时间的数组与等效的非扩展 dtype 数组进行比较时的错误( GH 37609) is_bool_dtype()当传递有效字符串(例如"boolean"(GH 38386)时,会引发错误 ValueError修复了当 a 列DataFrame具有未使用类别时逻辑运算符中的回归问题CategoricalIndex(GH 38367) 贡献者# 共有 257 人为此版本贡献了补丁。名字带有“+”的人首次贡献了补丁。 21CSM+ 阿卜杜勒·马卜迪 + Abhiraj 铰链 + 阿布舍克·曼格拉 + Abo7atm + 亚当·斯潘鲍尔 + 阿尔伯特·维拉诺瓦·德尔·莫拉尔 亚历克斯·科科 亚历克斯·林+ 亚历克斯·索恩 + 阿莱什·埃贾韦茨 + 阿里·麦克马斯特 阿曼达·杜苏扎 + 阿米姆·纳本 + 安德鲁·维特斯卡 安舒·拉杰普特 + 安东尼·米尔伯恩 阿伦12121 + 阿希·玛哈帕特拉 阿维纳什·潘查姆 + 豆南+ 本·福布斯 + 布伦丹·威尔比 + 布鲁诺·阿尔梅达 + 拜伦·博尔顿 + 钱基·帕塔克 克里斯·巴恩斯 + 克里斯·林奇 + 克里斯·威瑟斯 克里斯托夫·戴尔 + 克里斯托弗·哈德利 + 徐传柱 科尔胡多 + 丹·摩尔 丹尼尔·萨克斯顿 邝大卫 + 李大卫+ 大卫·姆瓦 + 迪帕克·潘迪 + 迪普亚曼·达塔 德文·彼得森 德米特里·佩雷佩尔金 + 道格拉斯·汉利 + 达格斯·格林伯格 + 伊莱·特鲁赫兹 + 艾略特·兰波诺 + 埃尔凡·纳里曼 埃里克·戈达德 梁志伟 + 埃里克·维塞尔 陈伊森+ 前夕+ 埃亚尔·特拉贝尔西 + 法比安·格布哈特 + 李芳辰 菲利克斯·克莱森 + 芬利·马奎尔 + 弗洛里安·罗斯切克 + 加布里埃尔·蒙泰罗 高瑟姆+ 杰拉德·乔根森 + 格雷戈里·利夫施茨 汉斯 严厉的夏尔马 黄汉丰 + 伊戈尔·戈特利博维奇 + 伊克拉尔·阿加洛西·努雷扎 欧夫·勒斯蒂格 艾萨克·维尔舒普 雅各布·皮科克 雅各布·史蒂文斯-哈斯 + 扬·穆勒 + 雅努斯 杰特·帕雷克 杰夫·埃尔南德斯 + 杰夫·雷巴克 嘉祥 若昂·佩德罗·贝尔诺·扎努托 + 乔尔·诺斯曼 乔尔·惠蒂尔 + 约翰·卡拉辛斯基 + 约翰·麦奎根 + 约翰尼·普比尔 + 乔纳斯·劳尔森 + 乔纳森·史瑞肯戈斯特 + 乔里斯·范登博什 何塞+ 何塞海军 + 乔什·坦普尔 + 工藤润+ 贾斯汀·埃塞特 贾斯汀·塞克斯顿 + 董凯琪 卡米尔·特洛塞维奇 + 卡蒂克·马图尔 卡西夫+ 肯尼·黄 凯文·谢泼德 库马尔·希瓦姆 + 莱昂纳多斯·陈 + 利维·马图斯 + 卢卡斯·罗德斯-吉拉奥 + 路易斯·平托 + 林奇+ 马克·加西亚 马可·戈雷利 玛丽亚·亚历山德拉·伊利 + 玛丽安·德内斯 马克·格雷厄姆 + 马丁·杜兰特 马特·罗斯克 马修·罗斯克 马蒂亚斯·布索尼耶 马克西姆·伊万诺夫 + 玛扬克·乔杜里 + 米塞克斯机器 梅加纳瓦拉纳西 + 梅特汉·库特鲁 + 迈克尔·贾尼亚克 + 米卡·史密斯 + 迈克尔·马里诺 米罗斯拉夫·塞迪维 穆罕默德·贾法尔·马什哈迪 穆罕默德·卡希夫 + 纳格什·库马尔 C+ 尼迪·扎雷 + 尼基尔·乔杜里 + 42号 奥莱·科齐涅茨 + 奥利维尔·卢格 熊猫开发团队 保罗·拉门斯 + 保罗·甘塞尔 帕克斯+ 刘彼得 + 菲利普·塞尔斯 + 普兰贾·巴德瓦吉 + 普拉雅格·萨夫萨尼 + 普鲁索塔曼·斯里坎特 + 奇比湾+ 拉胡尔·乔汉 + 拉胡尔·萨塔纳帕利 + 拉贾·比什诺伊 + 雷·贝尔 瑞沙玛·谢赫 + 理查德·沙德拉克 罗伯特·布拉德肖 罗伯特·德弗里斯 罗希斯295 S 单声道+ 竹野圣 + 萨希德·维尔吉 + 萨姆·科恩 + 萨姆·埃泽布南杜 + 桑德+ 萨塔克+ 萨萨克·维尼特·库马尔 + 萨特里奥·H·维卡索诺 + 斯科特·拉斯利 邵阳红 + 吴莎朗 + 舒巴姆·梅赫拉 + 西蒙·霍金斯 吴思轩 (Cherie) + 苏里斯·阿什 + 史蒂芬·雷伯格 苏瓦尤·阿里 斯文 西尔万·兰 + T·杰格姆 + 特尔吉·彼得森 托马斯·迪克森 + 托马斯·希维 + 托马斯·史密斯 托比亚斯·皮特斯 汤姆·奥格斯普格 托马斯·萨克雷达 + 托斯顿·沃特温 + 泰·米克+ 乌列尔MaD + 乌韦·科恩 维克拉玛蒂亚·冈卡 + 病毒李+ 写入+ 沃伦·怀特 + 韦斯利·博尔瑞克 + 威廉·艾德 林彦贤 + 亚西尔·卡鲁姆 + 永凯毅+ 耿元浩 + 尤里·米哈伊洛夫 + 池田裕太郎 高科裕也 + 扎克·布鲁克勒 + 扎克·科勒 + 陈志辉0903 + 阿布米伊 亚历克斯汀+ 阿莎玛13524 + 攻击68 豆南+ 清威 克莱康特987 丹切夫 + 埃巴迪+ 爱德华孔 艾略特·拉姆波诺 + 埃斯塔斯尼 + 加比卡 吉萨·兰加斯瓦迈亚 + 格菲扬 古鲁基兰 哈迪克pnsp + icanhazcodeplz + 伊万诺夫+ 杰布罗克门德尔 杰施瓦尔 杰内库斯 乔伊伊 + 垃圾+ 克拉贾特克 + 长曲棍球91 + 狮子座+ 利普基尔温 + LRJ球 卢卡斯罗德 + 妈3达+ 莫维斯莫妮卡 + 蒙隆斯基恩 + 姆泽特林11 + 恩格瓦拉 + 恩雷贝纳 公园DJ1 + 帕尔捷夫 帕特里克 真实领先 RXG+ 萨米尔·阿尤布 + 桑德兰 肖恩布朗 SM1899+ 斯马特维内图 分类人 + 史蒂夫娅+ 泰泽豪 + 蒂亚戈奥诺拉托 + 蒂姆亨德伍德 tkmz-n + tnwei+ 特潘扎+ 维内特拉吉510 + vmdhhh + 鑫融-databricks + 尤纳斯·卡萨 + 约纳舒布 + 阿达姆·利帕伊 +