【问题标题】:Creating multiple dataframes and saving them on Excel创建多个数据框并将它们保存在 Excel 上
【发布时间】:2021-11-01 18:50:36
【问题描述】:

我想创建多个包含四列随机数的数据框并将它们保存为单独的 Excel 文件。我无法做到这一点,尽管我知道它与 for 循环有关。我很感激这方面的任何帮助。我的代码如下:

import random
import numpy as np

locus_list=['0 to +15','+15 - +30', '+45 - +60','+60 - +75','+75 - +90','-30 - -45', '-45 - -60','-60 - -75', '-75 - -90'];
heights_list=[8, 11, 14, 17, 20, 23, 26, 29, 32];


random_heights_list =random.choices(heights_list, k=9)
print(random_heights_list);


Surface_selection=['yes','no'];
Surface_selection_list =np.array(random.choices(Surface_selection, k=9))
print(Surface_selection_list);

import pandas as pd

df = pd.DataFrame(list(zip(locus_list,random_heights_list,Surface_selection_list,Surface_selection_list)),index=['1','2','3','4','5','6','7','8','9'],columns=['Locus position','Building heights (m)', 'Roof selection for SE', 'Facade selection for SE']);
df

【问题讨论】:

  • 你的 for 循环在哪里?
  • 是的,我在哪里添加?在df之后?
  • 你的脚本在哪里?我怀疑你的 df 代码部分应该在 for 循环中,不是吗?
  • for i in range (5): df = pd.DataFrame(list(zip(locus_list,random_heights_list,Surface_selection_list,Surface_selection_list)),index=['1','2','3' ,'4','5','6','7','8','9'],columns=['Locus position','建筑高度(m)','SE的屋顶选择',' SE']) 的立面选择;打印(df)
  • 我试过这个,但它重复相同的数据帧 5 次。我需要 5 个不同的数据框。

标签: pandas dataframe for-loop random


【解决方案1】:

按照您设置变量的方式,您需要将它们全部放在循环中。随机函数只被调用一次,并使用每次创建的变量。

for i in range (5): 
    locus_list=['0 to +15','+15 - +30', '+45 - +60','+60 - +75','+75 - +90','-30 - -45', '-45 - -60','-60 - -75', '-75 - -90']
    heights_list=[8, 11, 14, 17, 20, 23, 26, 29, 32]
    random_heights_list =random.choices(heights_list, k=9)

    Surface_selection=['yes','no']
    Surface_selection_list =np.array(random.choices(Surface_selection, k=9))
    df = pd.DataFrame(list(zip(locus_list,random_heights_list,Surface_selection_list,Surface_selection_list)),index=['1','2','3','4','5','6','7','8','9'],columns=['Locus position','Building heights (m)', 'Roof selection for SE', 'Facade selection for SE'])
    print(df)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    • 2013-02-15
    • 1970-01-01
    • 2013-11-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多