votes up 3

The following 'id_vars' are not present in the DataFrame: (list(missing))

Package:
pandas
github stars 30911
Exception Class:
KeyError

Raise code

"id_vars must be a list of tuples when columns are a MultiIndex"
            )
        else:
            # Check that `id_vars` are in frame
            id_vars = list(id_vars)
            missing = Index(com.flatten(id_vars)).difference(cols)
            if not missing.empty:
                raise KeyError(
                    "The following 'id_vars' are not present "
                    f"in the DataFrame: {list(missing)}"
                )
    else:
        id_vars = []

    if value_vars is not None:
        if not i
😲  Walkingbet is Android app that pays you real bitcoins for a walking. Withdrawable real money bonus is available now, hurry up! 🚶

Ways to fix

votes up 3 votes down

Error code:

import pandas as pd
df = pd.DataFrame({'Name': {0'John'1'Bob'2'Shiela'},
                   'Course': {0'Masters'1'Graduate'2'Graduate'},
                   'Age': {027123221}})
# Name is id_vars and Course is value_vars
melted = pd.melt(df, id_vars =['Something'], value_vars =['Course'])  <--#ERROR HERE
print(melted)

That id_vars plays a role as identifier variables. It should be a column name that exists in DataFrame.

Fix code:

import pandas as pd
df = pd.DataFrame({'Name': {0'John'1'Bob'2'Shiela'},
                   'Course': {0'Masters'1'Graduate'2'Graduate'},
                   'Age': {027123221}})
# Name is id_vars and Course is value_vars
melted = pd.melt(df, id_vars =['Name'], value_vars =['Course']) 
print(melted)
Jun 28, 2021 anonim answer
anonim 13.0k

Add a possible fix

Please authorize to post fix