熊猫:转换列的类型(Pandas: convert type of column)
我有一个数据框与列
category 0 [Рубрики/Hi-Tech/Интернет/Универсальное/ ] 1 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 2 [] 3 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 4 [Рубрики/Hi-Tech/Интернет/Универсальное/ ] 5 [] 6 [Рубрики/Hi-Tech/Интернет/Универсальное/ ] 7 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 8 [Рубрики/Hi-Tech/Интернет/Универсальное/ ] 9 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 10 [Рубрики/Hi-Tech/Интернет/Универсальное/ ] 11 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 12 [] 13 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 14 [Рубрики/Hi-Tech/Интернет/Универсальное/ ]列中有列表。 我需要从每个列表中获取第一个字符串,但是一些列表是空的,当我尝试使用时
df.category.iloc[0]我明白了
ValueError:值的长度与索引的长度不匹配
我该如何解决这个错误并获取字符串而不是列表?
I have a dataframe with column
category 0 [Рубрики/Hi-Tech/Интернет/Универсальное/ ] 1 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 2 [] 3 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 4 [Рубрики/Hi-Tech/Интернет/Универсальное/ ] 5 [] 6 [Рубрики/Hi-Tech/Интернет/Универсальное/ ] 7 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 8 [Рубрики/Hi-Tech/Интернет/Универсальное/ ] 9 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 10 [Рубрики/Hi-Tech/Интернет/Универсальное/ ] 11 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 12 [] 13 [/Рубрики/Бизнес/Недвижимость/Базы недвижимост... 14 [Рубрики/Hi-Tech/Интернет/Универсальное/ ]There are lists in column. I need to get first string from every list, but some of lists are empty and when I try to use
df.category.iloc[0]I get
ValueError: Length of values does not match length of index
How can I fix that error and get strings instead of lists?
最满意答案
我认为你可以使用str的索引 :
df.category = df.category.str[0]样品:
df = pd.DataFrame({'category': [['aw','be'],[],['tr','yt','uy'],['tre']]}) print (df) category 0 [aw, be] 1 [] 2 [tr, yt, uy] 3 [tre] df.category = df.category.str[0] print (df) category 0 aw 1 NaN 2 tr 3 tre如果需要用空字符串替换NaN :
df.category = df.category.str[0].fillna('') print (df) category 0 aw 1 2 tr 3 treI think you can use indexing with str:
df.category = df.category.str[0]Sample:
df = pd.DataFrame({'category': [['aw','be'],[],['tr','yt','uy'],['tre']]}) print (df) category 0 [aw, be] 1 [] 2 [tr, yt, uy] 3 [tre] df.category = df.category.str[0] print (df) category 0 aw 1 NaN 2 tr 3 treIf need replace NaN with empty string:
df.category = df.category.str[0].fillna('') print (df) category 0 aw 1 2 tr 3 tre更多推荐
发布评论