当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python cudf.Series.replace用法及代码示例


用法:

Series.replace(to_replace=None, value=None, *args, **kwargs)

to_replace 中给出的值替换为 value

参数

to_replace数字、str 或 list-like

要替换的值。

  • 数字或字符串:
    • 等于 to_replace 的值将替换为 value
  • 数字或字符串列表:
    • 如果value也是list-like,则to_replacevalue的长度必须相同。
  • 字典:
    • 字典可用于为不同的现有值指定不同的替换值。例如,{‘a’: ‘b’, ‘y’: ‘z’} 将值 ‘a’ 替换为 ‘b’ and ‘y’ 和 ‘z’。要以这种方式使用字典,value 参数应该是 None
value标量,字典,list-like,str,默认无

用于替换与 to_replace 匹配的任何值的值。

inplace布尔值,默认为 False

如果为真,则到位。

返回

resultSeries

更换后的系列。掩码和索引被保留。

抛出

TypeError
  • 如果 to_replace 不是标量,则 array-like、dict 或 None
  • 如果to_replace 是一个字典并且值不是一个列表、字典或系列
ValueError
  • 如果将列表传递给 to_replacevalue 但它们的长度不同。

注意

目前不支持的参数有:limit , regex , method

例子

Series

标量 to_replacevalue

>>> import cudf
>>> s = cudf.Series([0, 1, 2, 3, 4])
>>> s
0    0
1    1
2    2
3    3
4    4
dtype: int64
>>> s.replace(0, 5)
0    5
1    1
2    2
3    3
4    4
dtype: int64

List-like to_replace

>>> s.replace([1, 2], 10)
0     0
1    10
2    10
3     3
4     4
dtype: int64

dict-like to_replace

>>> s.replace({1:5, 3:50})
0     0
1     5
2     2
3    50
4     4
dtype: int64
>>> s = cudf.Series(['b', 'a', 'a', 'b', 'a'])
>>> s
0     b
1     a
2     a
3     b
4     a
dtype: object
>>> s.replace({'a': None})
0       b
1    <NA>
2    <NA>
3       b
4    <NA>
dtype: object

如果 to_replacevalue 中的值类型与实际系列不匹配,则 cudf 对 pandas 表现出不同的行为,并且这些对将被静默忽略:

>>> s = cudf.Series(['b', 'a', 'a', 'b', 'a'])
>>> s
0    b
1    a
2    a
3    b
4    a
dtype: object
>>> s.replace('a', 1)
0    b
1    a
2    a
3    b
4    a
dtype: object
>>> s.replace(['a', 'c'], [1, 2])
0    b
1    a
2    a
3    b
4    a
dtype: object

DataFrame

标量 to_replacevalue

>>> import cudf
>>> df = cudf.DataFrame({'A': [0, 1, 2, 3, 4],
...                    'B': [5, 6, 7, 8, 9],
...                    'C': ['a', 'b', 'c', 'd', 'e']})
>>> df
   A  B  C
0  0  5  a
1  1  6  b
2  2  7  c
3  3  8  d
4  4  9  e
>>> df.replace(0, 5)
   A  B  C
0  5  5  a
1  1  6  b
2  2  7  c
3  3  8  d
4  4  9  e

List-like to_replace

>>> df.replace([0, 1, 2, 3], 4)
   A  B  C
0  4  5  a
1  4  6  b
2  4  7  c
3  4  8  d
4  4  9  e
>>> df.replace([0, 1, 2, 3], [4, 3, 2, 1])
   A  B  C
0  4  5  a
1  3  6  b
2  2  7  c
3  1  8  d
4  4  9  e

dict-like to_replace

>>> df.replace({0: 10, 1: 100})
     A  B  C
0   10  5  a
1  100  6  b
2    2  7  c
3    3  8  d
4    4  9  e
>>> df.replace({'A': 0, 'B': 5}, 100)
     A    B  C
0  100  100  a
1    1    6  b
2    2    7  c
3    3    8  d
4    4    9  e

相关用法


注:本文由纯净天空筛选整理自rapids.ai大神的英文原创作品 cudf.Series.replace。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。