簡體   English   中英

如何在pandas數據框上小寫JSON對象

[英]How do I lowercase a JSON object on pandas dataframe

這是我的數據:

Id   var_map
1    {'email_count': 3.0, 'outgoing': 90.0}
2    {'Email_Count': 5.0, 'outgoing': 91.0}

我所做的是

df['var_map'] = score_data['var_map'].str.lower()

結果與我預期的原因不同,錯誤是這樣的

Id   var_map
1    NaN
2    NaN

我應該如何解決這個問題

這是使用apply一種方法。

例如:

import pandas as pd
df = pd.DataFrame({"var_map": [{'email_count': 3.0, 'outgoing': 90.0}, {'Email_Count': 5.0, 'outgoing': 91.0}]})
df["var_map"] = df["var_map"].apply(lambda x: {k.lower(): v for k,v in x.items()})
print(df)

輸出:

                                    var_map
0  {u'outgoing': 90.0, u'email_count': 3.0}
1  {u'outgoing': 91.0, u'email_count': 5.0}

您是否嘗試過將數據列轉換為字符串?

import pandas as pd



data['var'] = data['var_map'].astype(str).str.lower()
print data
def var_map_lower(var_map):
    return {x.lower(): y for (x,y) in var_map.items()}

df['var_map'] = df['var_map'].apply(var_map_lower)

你可以試試這個嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM