當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。