Панды несколько столбцов заменить - PullRequest
0 голосов
/ 14 мая 2018

У меня есть df, как указано ниже, которое я разделяю по столбцам.

>>> df 
           ID      Started
0           NaN  20.06.2017  13:19:04
1           NaN  10.04.2018  04:48:32
2     WBTS-1509  06.11.2017  10:28:14
3     WBTS-1509  03.03.2018  10:12:29
4     WBTS-1117  07.03.2018  17:04:28
df['Started'].apply(lambda x: x.split(':')[0])
df['ID'].apply(lambda x: x.split('-')[1])

Я бы хотел установить 3 списка переменных

col_names = ['ID' , 'Started']
splitby = ['-' , ':']
index_after_split = [1 , 0]

делите разделение, используя одну строку (избегая петли), используя inplace = True.

Пожалуйста, помогите мне сделать то же самое.

Спасибо

1 Ответ

0 голосов
/ 14 мая 2018

Я думаю, что здесь необходим цикл с str.split и индексацией по str[]:

for a,b,c, in zip(col_names, splitby, index_after_split):
    df[a] = df[a].str.split(b).str[c]
print (df)
     ID        Started
0   NaN  20.06.2017 13
1   NaN  10.04.2018 04
2  1509  06.11.2017 10
3  1509  03.03.2018 10
4  1117  07.03.2018 17
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...