简体   繁体   中英

KeyError: “None of [Index(['5', '22', '25', '12',..],\n dtype='object', length=610)] are in the [columns]”

Trying to strip a certain part but throw an error "None of index in the columns"

Dataset:

这是数据集的 ss

Code snippets:

df4 = df[df["Rating"].notna()]
df4  = df4[df4["Rating"].str.strip("%").astype(int)]
df4

Error:

KeyError: "None of [Int64Index([ 36,  97,  97,  95,  96,  86,  89,  95,  92,  95,\n            ...\n            100,  92,  99, 100,  97, 100,  82,  97,  80,  97],\n           dtype='int64', length=335)] are in the [columns]"
df5 = df[df["Experience"].str.strip("years experience")]
df5

Error:

KeyError: "None of [Index(['5', '22', '25', '12', '33', '13', '15', '5', '12', '13',\n       ...\n       '20', '28', '26', '11', '13', '19', '15', '14', '40', '41'],\n      dtype='object', length=610)] are in the [columns]"

you can not do operations like this;
df4 = df4[df4["Rating"].str.strip("%").astype(int)] try to use apply in suitable manner. for example;
df4 = df4["Rating"].apply(lambda x: x.strip("%")).astype(int)
And,
your first line df[df["Rating"].notna()] works because df["Rating"].notna() returns boolean series and outer df[] operate on a that series such a way that remain records that give True for the series.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM