我在data['artist']
中有一些艺术家名称,我希望通过以下方式转换为分类列:
x = data['artist'].astype('category').cat.codes
x.dtype
返回:
dtype('int32')
我得到负数表示某种溢出情况。所以,我想使用np.int64
代替,但我找不到有关如何实现此目标的文档。
x = data['artist'].astype('category').cat.codes.astype(np.int64)
x.dtype
给出
dtype('int64')
但很明显int32转换为int64,因此负值仍然存在
x = data['artist'].astype('category').cat.codes.astype(np.int64)
x.min()
-1
答案 0 :(得分:1)
我认为您在malloc
列中有var counter = 1;
var time;
function intervalFunction(offset)
{
var id = '#' + counter;
$(id).attr('class', 'hidden');
counter += offset;
if(counter > 4)
counter = 1;
else if(counter < 1)
counter = 4;
id = '#' + counter;
$(id).attr('class', 'visible');
}
function startInterval(offset){
if(time)
clearInterval(time);
intervalFunction(offset);
time = setInterval(function () {
intervalFunction(1);
},3000);
}
$('#left').on('click', function peter() {
startInterval(-1);
});
$('#right').on('click', function () {
startInterval(1);
});
startInterval(1);
,因此代码为NaN
:
artist
要检查-1
,您可以使用isnull
:
data=pd.DataFrame({'artist':[np.nan,'y','z','x','y','z']})
x = data['artist'].astype('category').cat.codes
print x
0 -1
1 1
2 2
3 0
4 1
5 2
dtype: int8