Pandas Swifter未在数据帧上应用函数

Pandas Swifter未在数据帧上应用函数,pandas,dataframe,swifter,Pandas,Dataframe,Swifter,我有一个熊猫数据框数据,结构如下 data.dtypes() id object comment_text object toxic int64 severe_toxic int64 obscene int64 threat int64 insult int64 identity_hate int64 dtype: object 由于int64占用更多的

我有一个熊猫数据框
数据
,结构如下

data.dtypes()
id               object
comment_text     object
toxic             int64
severe_toxic      int64
obscene           int64
threat            int64
insult            int64
identity_hate     int64
dtype: object
由于
int64
占用更多的空间,因此我尝试将数字列转换为
uint8。
以下是我的代码

data[["toxic", "severe_toxic", "obscene", "threat", "insult", "identity_hate"]] = data[
["toxic", "severe_toxic", "obscene", "threat", "insult", "identity_hate"]
].swifter.apply(np.uint8,axis=0)
因为我想将函数应用于每一列,所以我使用了
axis=0
,这也是默认值。但是,即使在运行了这段代码之后,这里仍然是新的输出

data.dtypes
id               object
comment_text     object
toxic             int64
severe_toxic      int64
obscene           int64
threat            int64
insult            int64
identity_hate     int64
dtype: object
数据类型似乎保持不变。但是如果我对一个系列使用
swifter
选项,例如

data['toxic']=data['toxic'].swifter.apply(np.uint8)
我们得到如下输出

data.dtypes

id               object
comment_text     object
toxic             uint8
severe_toxic      int64
obscene           int64
threat            int64
insult            int64
identity_hate     int64
dtype: object


看起来,
swifter
正在处理该系列,但在处理数据帧时效果不太好。我可以得到一些关于如何修改或正确编写数据帧代码的帮助吗。提前谢谢