从CSV转换为Python数据帧中的分类数据
我有保险数据,其中有一个列名为“区域”,其中指定了区域。出于数据可视化的目的,我需要将这些字母值更改为数值,即South应更改为1。如果区域仅为1或2,我可以更改它,但由于区域计数较大,因此不可能更改。有什么方法可以做到这一点吗?下面是我到目前为止所做的代码(不确定是否正确)从CSV转换为Python数据帧中的分类数据,python,pandas,dataframe,csv,Python,Pandas,Dataframe,Csv,我有保险数据,其中有一个列名为“区域”,其中指定了区域。出于数据可视化的目的,我需要将这些字母值更改为数值,即South应更改为1。如果区域仅为1或2,我可以更改它,但由于区域计数较大,因此不可能更改。有什么方法可以做到这一点吗?下面是我到目前为止所做的代码(不确定是否正确) 解决上述问题的代码应该是什么?如果您可以使用第三方库,您可以利用factorize。 以下是玩具数据的示例: 将熊猫作为pd导入 df=pd.DataFrame({“region”:[“b”、“c”、“d”、“a”、“a”
解决上述问题的代码应该是什么?如果您可以使用第三方库,您可以利用
factorize
。
以下是玩具数据的示例:
将熊猫作为pd导入
df=pd.DataFrame({“region”:[“b”、“c”、“d”、“a”、“a”]})
df[“region_as_num”],u=pd.factorize(df[“region”],sort=True)
谢谢您的参考。它适合我的需要
k = insurance.shape[0]
dict1={}
for i in range(k):
if insurance['region'][i] in dict1:
print('Testing')
else:
dict1[i] = insurance['region'][i]
print(dict1)