所以我有一个csv,其中包含不同数据类型的列。但是,当我将其读入熊猫时,它会将所有内容显示为对象数据类型。
如何将列转换为原始的数字和分类特征?
答案 0 :(得分:0)
您可以做几件事:现在,这里有一些示例:
df = pd.DataFrame({"A": ["a", "b", "c", "a"], "B": ['1','4', '5', '8']})
df["C"] = df["A"].astype('category')
df["D"] = df["B"].astype('int')
输出:
A B C D
0 a 1 a 1
1 b 4 b 4
2 c 5 c 5
3 a 8 a 8
df.dtypes
A object
B object
C category
D int32
dtype: object
答案 1 :(得分:0)
data = data.convert_objects(convert_numeric = True)
这会将数字特征转换为浮点数,并让分类变量保留为对象,我后来对其进行了标签编码以馈入模型。
我受到限制,不能共享代码或数据,但我已将其样本作为参考。
请注意该数据的第一行具有该列的数据类型。我已经删除了第一行以备后用。