gpt4 book ai didi

python - Pandas series.map 将值更改为 NaN

转载 作者:行者123 更新时间:2023-11-30 09:59:27 25 4
gpt4 key购买 nike

我正在处理一个短信数据集,该数据集有两列:“标签列”由“火腿/垃圾邮件”组成,另一列“消息”由一堆字符串组成。

我将“标签列”转换为数字标签,ham=1 和 spam=0

#Converting our labels to numeric labels
# ham = 0 and spam = 1
dfcat = dataset['label']=dataset.label.map({'ham':1,'spam':0})
dfcat.head()

所以当我第一次运行上面的代码时,它给了我我正在寻找的确切东西,但在我再次运行它之后,它开始给我“Nan”。

Out[108]: 
0 NaN
1 NaN
2 NaN
3 NaN
4 NaN
Name: label, dtype: float64

拜托,我需要一种方法来解决这个问题。

最佳答案

@G。安德森给出了为什么你第二次重新运行时看到那些 NaN 的原因。

至于在 Python 中处理分类变量的方法,可以使用 one hot encoding 。下面的玩具示例:

import pandas as pd

df = pd.DataFrame({"col1": ["a", "b", "c"], "label": ["ham", "spam", "ham"]})
df_ohe = pd.get_dummies(df, prefix="ohe", drop_first=True, columns=["label"])
df_ohe

但是,它还取决于分类变量的数量及其基数(如果基数很高,一种热编码可能不是最好的方法)。

关于python - Pandas series.map 将值更改为 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59584830/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com