py-datatable 用 NaN 替换列中的空字符串
py-datatable Replace empty string in column with NaN
在 python 数据 table 中,我想用 NaN 替换空字符串。当我尝试时,出现以下错误。它适用于 pandas。在此先感谢您的帮助。
数据table 我试过的语法:
dt[:,"column_name"].replace('',np.nan)
收到错误:
Cannot replace string value ''
with a value of type <class 'float'>
pandas 有效的语法:
pd["column_name"]=pd["column_name"].replace('',np.nan)
Py 数据表语法根据其值更新(替换)其中一列:
import datatable as dt
mydt = dt.Frame(a=['a','b','c','','d','e'])
mydt[dt.f.a == '', dt.update(a = None)]
更新前的数据表:
mydt
| a
-- + --
0 | a
1 | b
2 | c
3 |
4 | d
5 | e
更新后的数据表:
mydt
| a
-- + --
0 | a
1 | b
2 | c
3 | NA
4 | d
5 | e
适用于 0.10.0 或更高版本
奖金答案:完成相反的事情 - 用一些常数值使用函数替换缺失值 isna()
:
mydt = dt.Frame(a=['a','b','c', None,'d','e'])
mydt[dt.isna(dt.f.a), dt.update(a = 'NULL')]
在 python 数据 table 中,我想用 NaN 替换空字符串。当我尝试时,出现以下错误。它适用于 pandas。在此先感谢您的帮助。
数据table 我试过的语法:
dt[:,"column_name"].replace('',np.nan)
收到错误:
Cannot replace string value
''
with a value of type <class 'float'>
pandas 有效的语法:
pd["column_name"]=pd["column_name"].replace('',np.nan)
Py 数据表语法根据其值更新(替换)其中一列:
import datatable as dt
mydt = dt.Frame(a=['a','b','c','','d','e'])
mydt[dt.f.a == '', dt.update(a = None)]
更新前的数据表:
mydt
| a
-- + --
0 | a
1 | b
2 | c
3 |
4 | d
5 | e
更新后的数据表:
mydt
| a
-- + --
0 | a
1 | b
2 | c
3 | NA
4 | d
5 | e
适用于 0.10.0 或更高版本
奖金答案:完成相反的事情 - 用一些常数值使用函数替换缺失值 isna()
:
mydt = dt.Frame(a=['a','b','c', None,'d','e'])
mydt[dt.isna(dt.f.a), dt.update(a = 'NULL')]