在 Pandas DataFrame
中如何将一列中的字符串映射到整数。我在 DataFrame
中有大约 500 个字符串,需要用以“1”开头的整数替换它们。
示例 DataFrame
。
Request count
547 GET /online/WebResource.axd 37506
424 GET /online/2/2/22001.aspx 13315
699 POST /online/2/6/1/261001.aspx 13236
546 GET /online/ScriptResource.axd 12255
492 GET /online/2/6/Home.aspx 10462
660 POST /online/2/2/22001.aspx 9803
我已将所有请求放入列表中。
requestlist = df.Request.unique()
不知道如何将这些请求映射到 1-500。类似的问题。 python pandas replacing strings in dataframe with numbers
最佳答案
所以您可以做的是构建一个临时数据框并将其合并回您现有的数据框:
temp_df = pd.DataFrame({'Request': df.Request.unique(), 'Request_id':range(len(df.Request.unique()))})
现在将其合并回您的原始数据框
df = df.merge(temp_df, on='Request', how='left')
关于python - 使用整数映射 Pandas Dataframe 中的字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22346552/