python - 从 pandas 数据帧列创建指定长度的组

标签 python pandas

Pandas 新手,我一生都无法弄清楚如何在不使用 python 函数的情况下实现单行(因为我正在尝试学习 pandas 并感觉它可以处理这个问题)。提示?

我有一个对话话语的数据框,我想创建话语组,其中组大小从列表中输入。

#utterance column in list form
utterance_list = ['this', 'is', 'not', 'working']

df = pd.DataFrame({'utterances': utterance_list})

#list of desired group sizes
sizes = [1, 0, 3]

{insert missing function here}

desired output = ['this', '', 'is not working']

最佳答案

此解决方案仅使用 pandasnumpy

由于 pandas 将数据存储在 numpy 数组中,因此您没有理由避免使用 numpy 功能。

import pandas as pd, numpy as np

A = np.array(['this', 'is', 'not', 'working'])
sizes = np.array([1, 0, 3])

df = pd.DataFrame({'utterances': utterance_list})

df['utterances'] = np.split(A, sizes.cumsum())

print(df)

#            utterances
# 0              [this]
# 1                  []
# 2  [is, not, working]
# 3                  []

关于python - 从 pandas 数据帧列创建指定长度的组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49842069/

相关文章:

python - 查找csv文件中的列数

python - 如何从 Pandas 数据框创建 postgres 表?

python - pandas:类型转换返回错误的值

python - django查询-如何在不同期间获取最新行

Python-创建一个Class-x对象没有属性 'split'

python - 从 .apply() 更改为使用列表理解将一个数据框与一列列表与另一个数据框中的值进行比较的函数

python - pandas:DTypeWarning,但我指定了 dtypes

Pandas ,按计数分组并将计数添加到原始数据框?

pandas.DataFrame.to_markdown 将大整数转换为 float

python - Numpy 和 Matplotlib 中的双变量高斯密度函数