Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 8, 2022 13:33:48

Steposh
Зарегистрирован: 2022-04-08
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Как текстовому набору данных присвоить числовые значения?

У меня есть таблица с тысячами строк, в колонках указаны города. Как мне присвоить значению текстовому номер? Т.е. Москва -1, Самара -2, Питер-3, Москва-1 и т.д.

Желательно, чтоб это делалось автоматически и в том же файле писалась колонка рядом.

Это нужно для кластеризации. Или же, как сделать чтобы алгоритм мог кластеризовать (по К-средним) текстовые данные?

Офлайн

#2 Апрель 8, 2022 19:32:33

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9873
Репутация: +  853  -
Профиль   Отправить e-mail  

Как текстовому набору данных присвоить числовые значения?

  
>>> lst = [
...     'a',
...     'b',
...     'c'
... ]
>>> 
>>> numbers = (
...     1,
...     2,
...     3
... )
>>> 
>>> result = list(zip(lst, numbers))
>>> print(result)
[('a', 1), ('b', 2), ('c', 3)]
>>> 
>>> for text, number in result:
...     print(text, number)
... 
a 1
b 2
c 3
>>> dct = dict(result)
>>> 
>>> text = 'abbacb'
>>> 
>>> for char in text:
...     print(char, dct[char])
... 
a 1
b 2
b 2
a 1
c 3
b 2
>>>

Steposh
и в том же файле писалась колонка рядом
Запиши это в новый файл, а потом, когда новый файл будет готов, сотри старый файл и переименуй новый файл в старый файл.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version