从CSV转换为Python数据帧中的分类数据

从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”

我有保险数据,其中有一个列名为“区域”,其中指定了区域。出于数据可视化的目的,我需要将这些字母值更改为数值,即South应更改为1。如果区域仅为1或2,我可以更改它,但由于区域计数较大,因此不可能更改。有什么方法可以做到这一点吗?下面是我到目前为止所做的代码(不确定是否正确)


解决上述问题的代码应该是什么?

如果您可以使用第三方库,您可以利用
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)