Преобразование серии строк в числовую - PullRequest
0 голосов
/ 19 ноября 2018

Я делаю

X = data['x'].apply(lambda h: [int(h[i:i + 2], 16) for i in (0, 2 ,4)])

Где x имеет строки шестнадцатеричных цветов, и я хотел бы сопоставить их с массивами RGB (по 3 значения в каждой). После этого X имеет dtype='object, а X.values представляет собой массив numpy массивов.

Моя последняя цель - сделать его массивом 3 * n и использовать его с sklearn.cluster.KMeans. Каков наилучший способ достижения этого?

1 Ответ

0 голосов
/ 19 ноября 2018

После создания X вы можете разбить данные на 3 столбца, например:

X = data['x'].apply(lambda h: [int(h[i:i + 2], 16) for i in (0, 2 ,4)])
data[['R','G','B']] = pd.DataFrame(X.values.tolist(), index=X.index)

, чтобы

data[['R','G','B']]

имел результат в трех столбцах для дальнейшей обработки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...