Я пытаюсь вставить столбец с именем Price Label
после столбца Price
в моем фрейме данных приложений AppleStore, перебирая фрейм данных и добавляя строку («Свободно» или «Не бесплатно») к приложениям с price = $0.00.
Как таковой код, который я пытался найти, ниже
for i, row in df.iterrows():
price = row.Price.replace('$','')
if price == '0.0':
row.append("Free")
else:
row.append("Non-Free")
df[column].append("price_label") # in an attempt to add a header to column.
Но затем я получаю сообщение об ошибке ниже. Может кто-нибудь сказать мне, есть ли специальный способ, которым pandas может объединить строку в серию / столбец фрейма данных? Как всегда, я ценю помощь сообщества. Вы, ребята, лучшие.
TypeError Traceback (most recent call last)
<ipython-input-191-c6a90a84d57b> in <module>
6 row.append("Free")
7 else:
----> 8 row.append("Non-Free")
9
10 df.head()
~\anaconda3\lib\site-packages\pandas\core\series.py in append(self, to_append, ignore_index, verify_integrity)
2580 to_concat = [self, to_append]
2581 return concat(
-> 2582 to_concat, ignore_index=ignore_index, verify_integrity=verify_integrity
2583 )
2584
~\anaconda3\lib\site-packages\pandas\core\reshape\concat.py in concat(objs, axis, join, ignore_index, keys, levels, names, verify_integrity, sort, copy)
279 verify_integrity=verify_integrity,
280 copy=copy,
--> 281 sort=sort,
282 )
283
~\anaconda3\lib\site-packages\pandas\core\reshape\concat.py in __init__(self, objs, axis, join, keys, levels, names, ignore_index, verify_integrity, copy, sort)
355 "only Series and DataFrame objs are valid".format(typ=type(obj))
356 )
--> 357 raise TypeError(msg)
358
359 # consolidate
TypeError: cannot concatenate object of type '<class 'str'>'; only Series and DataFrame objs are valid