"NameError: name 'update' is not defined" Error when using datatable
"NameError: name 'update' is not defined" Error when using datatable
我第一次尝试使用 python 中的数据表,并按照此 link 中的示例进行操作:Grouping with by()
以探索有关数据表的更多信息,但我得到了 NameError
在代码下方尝试时。
import numpy as np
import pandas as pd
import datatable as dt
df = dt.Frame([[1, 1, 5], [2, 3, 6]], names=['A', 'B'])
df[:, update(filter_col = count()), by('A')]
错误:
--------------------------------------------------------------------------- NameError Traceback (most recent call
last) ~\AppData\Local\Temp/ipykernel_2040/2701559568.py in <module>
----> 1 df[:, update(filter_col = count()), by('A')]
NameError: name 'update' is not defined
这在上面显示的示例中工作正常 link 但我不确定为什么会收到此错误。还尝试了这方面的帮助:
help(update())
但是出现这个错误:
--------------------------------------------------------------------------- NameError Traceback (most recent call
last) ~\AppData\Local\Temp/ipykernel_2040/1402169417.py in <module>
----> 1 help(update())
NameError: name 'update' is not defined
函数update
不是直接导入的,而是通过datatable
(dt
)导入的。您可以使用 dt.update
.
访问它
您没有使用正确的名称来访问 update()
。第一个例子有:
from datatable import (dt, f, by, ifelse, update, sort,
count, min, max, mean, sum, rowsum)
意味着他们可以将 datatable.update
称为 update
。
但是你的导入是这样的:
import datatable as dt
意味着要访问 datatable.update
,您必须使用 dt.update
。与 datatable.count
和 datatable.by
相同:
所以解决方案看起来像:
df[:, dt.update(filter_col = dt.count()), dt.by('A')]
我第一次尝试使用 python 中的数据表,并按照此 link 中的示例进行操作:Grouping with by()
以探索有关数据表的更多信息,但我得到了 NameError
在代码下方尝试时。
import numpy as np
import pandas as pd
import datatable as dt
df = dt.Frame([[1, 1, 5], [2, 3, 6]], names=['A', 'B'])
df[:, update(filter_col = count()), by('A')]
错误:
--------------------------------------------------------------------------- NameError Traceback (most recent call
last) ~\AppData\Local\Temp/ipykernel_2040/2701559568.py in <module>
----> 1 df[:, update(filter_col = count()), by('A')]
NameError: name 'update' is not defined
这在上面显示的示例中工作正常 link 但我不确定为什么会收到此错误。还尝试了这方面的帮助:
help(update())
但是出现这个错误:
--------------------------------------------------------------------------- NameError Traceback (most recent call
last) ~\AppData\Local\Temp/ipykernel_2040/1402169417.py in <module>
----> 1 help(update())
NameError: name 'update' is not defined
函数update
不是直接导入的,而是通过datatable
(dt
)导入的。您可以使用 dt.update
.
您没有使用正确的名称来访问 update()
。第一个例子有:
from datatable import (dt, f, by, ifelse, update, sort,
count, min, max, mean, sum, rowsum)
意味着他们可以将 datatable.update
称为 update
。
但是你的导入是这样的:
import datatable as dt
意味着要访问 datatable.update
,您必须使用 dt.update
。与 datatable.count
和 datatable.by
相同:
所以解决方案看起来像:
df[:, dt.update(filter_col = dt.count()), dt.by('A')]