Замена нескольких столбцов Pandas

У меня есть 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.

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

Спасибо

Каков ваш желаемый результат?

user3483203 14.05.2018 12:17

хотите разделить значения «ID» на «-» и сохранить индекс 1, а значения «Начато» разделить на «:» и сохранить индекс 0

Bharat Sharma 14.05.2018 12:19
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
2
37
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я думаю, здесь необходим цикл с 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

Другие вопросы по теме