Я вижу другие вопросы, которые люди задавали по этой теме, но многие решения, по-видимому, направлены на какую-то математическую операцию со специальными встроенными функциями для ее обработки (например, «повторить»).Я пытаюсь разбить текст на несколько строк, и это не похоже на работу.
У меня есть эти данные:
Я хочу выделить каждое приложение в каждой строке в отдельную строку и сохранить все остальные данные.Результат будет выглядеть примерно так:
Я пробовал несколько комбинаций «стек» или создание списков и создание новых DF, но я не могНе могу понять, как получить все остальные столбчатые данные с его помощью.
Мое частичное решение, приведенное ниже, дает только 2 столбца вместо всех (у меня около 20 столбцов и 200 тыс. строк реальных данных).
import pandas as pd
data = [[1,'vuln1','App1;App2;App3'],[1,'vuln2','App1;App2;App3'],[1,'vuln3','App1;App2;App3']]
col = ['Machine','Vulnerability','Application']
df = pd.DataFrame(data, columns=col)
new_df = pd.DataFrame(df['Application'].str.split(';').tolist(), index=df['Machine']).stack()