У меня есть набор данных под названием «my_data», который я назначаю общей c переменной под названием «данные». В моем наборе данных есть столбец под названием «впечатление». Этот столбец «оттиск» содержит текст медицинских заметок, например «Поражение в затылочной области».
Я хотел бы построить гистограмму количества уникальных слов, встречающихся в этом столбце. Вот сценарий python, который я использую вместе с генерируемой им ошибкой:
data = my_text_dataset # assigns my data set to a generic variable called 'data'
TEXT_COLUMN = 'impression' # note: one of the columns in this data set is called 'impression'
text = data[TEXT_COLUMN]
def plot_word_number_histogram(text):
text.str.split().\
map(lambda x: len(x)).\
hist()
plot_word_number_histogram(data['impression'])
Python (блокнот Jupyter) возвращает эту ошибку:
~\Anaconda3\lib\site-packages\pandas\core\base.py in _map_values(self, mapper, na_action)
1152
1153 # mapper is a function
-> 1154 new_values = map_f(values, mapper)
1155
1156 return new_values
pandas\_libs\lib.pyx in pandas._libs.lib.map_infer()
<ipython-input-68-95bf9c5b8264> in <lambda>(x)
2 def plot_word_number_histogram(text):
3 text.str.split().\
----> 4 map(lambda x: len(x)).\
5 hist()
TypeError: object of type 'float' has no len()
Примечание: этот сценарий отлично работал с другими текстовыми столбцами. Я заметил, что в новом наборе данных, который я использую, также есть некоторые цифры, например: «ИСТОРИЯ: 1. аневризма 2. метастазы и т. Д. c». и я подозреваю, что это вызывает преобразование типов в Python, которое взрывает мой сценарий выше, но я могу ошибаться?
Может ли кто-нибудь предложить настройку моего сценария, чтобы он преобразовывал данные из 'float 'в' int ', чтобы он мог перейти в график гистограммы?
Большое спасибо !!