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

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

Это нужно для кластеризации. Или же, как сделать чтобы алгоритм мог кластеризовать (по К-средним) текстовые данные?
py.user.next
  
>>> 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
и в том же файле писалась колонка рядом
Запиши это в новый файл, а потом, когда новый файл будет готов, сотри старый файл и переименуй новый файл в старый файл.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB