Переименовать элементы в столбце Pyspark - PullRequest
0 голосов
/ 31 января 2020

В настоящее время я пытаюсь переименовать элементы в моем фрейме данных pyspark. Фрейм данных df выглядит следующим образом:

+--------+------+------+
|   hello|  this|column|
+--------+------+------+
|     132|   234|   abc|
|34563465|134134|   def|
|      12|    34|   ghi|
|     132|   234|   jkl|
|34563465|134134|   mno|
|      12|    34|   pqr|
|     132|   234|   stu|
|34563465|134134|   ghi|
|      12|    34|   pqr|
+--------+------+------+

Я пытаюсь переименовать каждый элемент в столбце 'column' следующим образом:

df['column'] = df['column'].map({'abc': 'cba',
                                 'def': 'fed',
                                 'ghi': 'ihg',
                                 'jkl': 'lkj',
                                 'mno': 'onm',
                                 'pqr': 'rqp',
                                 'stu': 'uts'})

, чтобы После этого датафрейм будет выглядеть так:

+--------+------+------+
|   hello|  this|column|
+--------+------+------+
|     132|   234|   cba|
|34563465|134134|   fed|
|      12|    34|   ihg|
|     132|   234|   lkj|
|34563465|134134|   onm|
|      12|    34|   rqp|
|     132|   234|   uts|
|34563465|134134|   ihg|
|      12|    34|   rqp|
+--------+------+------+

Как я могу сделать это изменение в pyspark?

1 Ответ

1 голос
/ 31 января 2020

Вы можете сделать это с помощью функции replace:

mapping = {
    'abc': 'cba',
    'def': 'fed',
    'ghi': 'ihg',
    'jkl': 'lkj',
    'mno': 'onm',
    'pqr': 'rqp',
    'stu': 'uts'
}
df = df.replace(to_replace=mapping, subset=['column'])
...