0

for example i have a df like this named sozluk. I want to convert this strings to numbers. I have written some code but i am really confused.

sozluk = {"column":["abc","abc","aas",
                "aas","adas"],
"degerler":["a","a","b","b","c"]}
sozluk = pd.DataFrame(data=sozluk)


#sozluk.column = [k if i=="abc" else 2 if i=="aas" else 0 for i in 
sozluk.column]
objects = 0
columnss=[]
vcounts=[]
for i,j in enumerate(sozluk.columns):
    if sozluk[j].dtype =="object":
         objects= objects+1
         columnss.append(j)
         vcounts.append(len(sozluk[j].value_counts()))

 for i,j in enumerate(columnss):
     for a in range(objects):
         for k,l in enumerate(range(vcounts[i])):
             for each in sozluk.columns:
                 print(each)
                 if sozluk.loc[i,j]==sozluk[j].value_counts().index[k]:
      sozluk[columnss] = []
Konrad Rudolph
  • 530,221
  • 131
  • 937
  • 1,214
  • do you want : `pd.get_dummies(sozluk)` ? – anky Aug 14 '19 at 17:06
  • 1
    Please have a look at [How to make good pandas examples](https://stackoverflow.com/questions/20109391/how-to-make-good-reproducible-pandas-examples) and edit to include some sample input and output so we can better understand your task – G. Anderson Aug 14 '19 at 17:10

1 Answers1

1

I would use pd.Categorical function for that

for col in sozluk:
    sozluk[col] = pd.Categorical(sozluk[col]).codes
ivallesp
  • 2,018
  • 1
  • 14
  • 21