我有一些艺术家姓名,data['artist']我想通过以下方式转换为分类列:
x = data['artist'].astype('category').cat.codes
x.dtype
Run Code Online (Sandbox Code Playgroud)
返回:
dtype('int32')
Run Code Online (Sandbox Code Playgroud)
我得到负数,这表明存在某种溢出情况。因此,我想使用np.int64它,但我找不到有关如何完成此操作的文档。
x = data['artist'].astype('category').cat.codes.astype(np.int64)
x.dtype
Run Code Online (Sandbox Code Playgroud)
给予
dtype('int64')
Run Code Online (Sandbox Code Playgroud)
但很明显 int32 已转换为 int64,因此负值仍然存在
x = data['artist'].astype('category').cat.codes.astype(np.int64)
x.min()
-1
Run Code Online (Sandbox Code Playgroud)