Why does my script yield too many "unknown" genders?

Viewed 19

I created this code to import a file of tweet URLs and run gender recognition on the names of all those who liked each tweet. However, most of my results yield 50%+ of the users as "unknown" gender. Why might this be the case?

    users = client.get_liking_users(id=x)
    
    tempnames = []

    columns = ['display_name',
               'username',
               'user_location']

    for user in users.data:
      tempnames.append([user.name, user.username, user.location])

    for g in tempnames:
      
          name=g[0]

          for i in range(len(name)):
            if name[i]==' ' or name[i]=='_' or name[i]=='.':
              name=name[0:I]
              break

          s=''
          for chr in name:
            if chr.isalpha():
              s+=chr

          gender=d.get_gender(s)

          if gender=='female':
            female+=1

          elif gender=='male':
            male+=1

          elif gender=='andy':
            andy+=1
      
          elif gender=='mostly_female':
            mostly_female+=1
      
          elif gender=='most_male':
            mostly_male+=1

          elif gender=='unknown':
              name=g[1]

                  for i in range(len(name)):
                if name[i]==' ' or name[i]=='_' or name[i]=='.':
                  name=name[0:I]
                break

              s=''
              for chr in name:
                if chr.isalpha():
                  s+=chr

              gender=d.get_gender(s)
              if gender=='female':
                female+=1

              elif gender=='male':
                male+=1

              elif gender=='andy':
                andy+=1

              elif gender=='mostly_female':
                mostly_female+=1
      
              elif gender=='most_male':
                mostly_male+=1

              elif gender=='unknown':
                unknown+=1

After this there's code that appends the numbers in columns and prints it. Here are sample results for one run:

   female  male  andy  unknown  mostly_female  mostly_male
0      25     9     0       54              5            0
1      24    26     2       38              3            0
2      24    26     2       38              3            0
3      31    17     1       37              4            0
4      43     7     1       34              3            0
5      21    23     0       42              3            0
6      18    12     1       47              6            0
7      19    25     5       30              4            0
8      26    10     1       48              4            0
9      19    22     4       35              5            0
0 Answers
Related