python - 为列表中的每个值添加一列

标签 python pandas

我有一个 0 到 40 之间的随机数列表,由以下生成:

A=[]
x=0

while x<100:  
    a=random.randint(0,40)
    A.append(a)
    x+=1

给定一个包含 1 列秒(86400 行)的现有 DataFrame,如何为列表 A 中的每个值添加 1 列?

为了更好地解释它:我想向数据帧添加 100 列,每一列的第一行包含列表 A 中的值。然后,在接下来的行中我将进行其他计算。

最佳答案

我相信你可以使用join使用带有 index=[0] 的新一行 DataFrame,因此在与具有默认索引的现有 DataFrame 连接后,它将数据与具有相同索引的第一行对齐 - 0:

#existing df
df1 = pd.DataFrame({'col':np.arange(86400)})
#print (df1.head())

#100 columns df
df2 = pd.DataFrame([np.random.randint(0, 40, 100)])
#if want create df by list A
#df2 = pd.DataFrame([A])
#print (df2)

#join together
df = df1.join(df2)
#print (df.head())

关于python - 为列表中的每个值添加一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53353119/

相关文章:

在我的 Python 安装路径中找不到 python33.dll?

python - Pandas 中具有相同名称的多个列

python - 提高从 pandas 写入 sqlite 时的性能

python - 如何将字符串作为新列添加到 Pandas Dataframe?

python - 从数据库中的表中获取数据

python - celery task_success 与发件人过滤器

python - 如果我不提供任何静态内容,我是否需要 Nginx 和 Gunicorn?

来自 t 统计的 Python p 值

python - 如何在 Python setup.py 中递归添加包数据?

python - 组合两个for循环以提高效率