![](/img/trans.png)
[英]How do i separate overlapping cards from each other using python opencv?
[英]How do i separate these data from each other
我有一個數據集,其中每個單元格中的數據與每個單元格中的列名混合在一起,如下圖所示:
Gender
“Gender”:”male”
“Gender”:”female”
“Gender”:”male”
“Gender”:”female”
我正在通過 anaconda 對其進行清潔,我已經嘗試了所有但無濟於事。 我希望它看起來如下圖所示:
Gender
Male
Female
Male
Female
您可以使用 Pandas 像這樣應用 function:
import pandas as pd
df = pd.DataFrame({"Gender":['“Gender”:”male”','“Gender”:”female”','“Gender”:”male”','“Gender”:”female”'])
def cln(st):
me = st.split(":")
return me[1]
df["Gender"].apply(lambda val: cln(val))
考慮到你的問題。 我已經像下面這樣重新創建了dataframe
,
import pandas as pd
df = pd.DataFrame({"Gender":['“Gender”:”male”',
'“Gender”:”female”',
'“Gender”:”male”',
'“Gender”:”female”']})
因此, DataFrame
如下所示,
Gender
0 “Gender”:”male”
1 “Gender”:”female”
2 “Gender”:”male”
3 “Gender”:”female”
這是可以解決問題的代碼
for i in df.columns:
df[i] = [j.replace("”",'').split(":")[-1].capitalize() for j in df[i]]
Output df
:
Gender
0 Male
1 Female
2 Male
3 Female
數據有一些奇怪的引號字符,因此您需要進行一些按摩以使其干凈。 您可以簡單地使用 object 系列上的str
調用來直接處理字符串值。
df.Gender.str.replace(r'”|“', '', regex=True)\
.str.split(":", expand=True)[1]\
.str.capitalize()
0 Male
1 Female
2 Male
3 Female
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.