«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как я могу разделить, разделенные запятыми струнами, на пандас-фрейм на отдельные строки?

Как я могу разделить, разделенные запятыми струнами, на пандас-фрейм на отдельные строки?

Опубликовано в 2025-03-25
Просматривать:199

How Can I Split Comma-Separated Strings in a Pandas DataFrame into Separate Rows?

разделить строки данных с запятой пандами на отдельные строки

В данных пандас часто встречаются на отдельные ROWS. Чтобы достичь этого, можно использовать несколько подходов:

с использованием series.explode () или dataframe.explode () :

этот метод доступен в Pandas 0.25.0 и выше и конкретно спроектирован для взрыва Columns.

df.explode('column_name')

использование векторизованной функции :

для ситуаций, включающих несколько нормальных и множественных списков, векторизованная функция может обеспечить более версическое решение. fill_value = '', reverve_index = false): # ... (подробности реализации)

def explode(df, lst_cols, fill_value='', preserve_index=False):
    # ... (implementation details)
преобразование строк CSV в списки

: , если цель состоит в том, чтобы преобразовать строки CSV в списки, это может быть достигнуто, разделяя строки, используя str.split (). df ['var1']. str.split (',')

собственный векторизованный подход
df['var1'] = df['var1'].str.split(',')

Этот подход может обрабатывать несколько столбцов, включая как нормальные и списки. col: np.repeat (x [col]. для col в x.columns.difference ([lst_col]) }). Назначить (** {lst_col: np.concatenate (x [lst_col] .values)}) [x.columns.tolist ()]

Legacy Solution

:

exploded_df = pd.DataFrame({
    col: np.repeat(x[col].values, x[lst_col].str.len())
    for col in x.columns.difference([lst_col])
}).assign(**{lst_col: np.concatenate(x[lst_col].values)})[x.columns.tolist()]

] Эти подходы предлагают различные варианты для разделения, разделенных запятыми строками в пандах, удовлетворяющих конкретные требования и соображения производительности. ]

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3