for i in tqdm(range(0,34,2)): for n in range(1190): globals()['df'+ '0' + str(int(i/2+1))].iloc[n,0] = globals()['list'+ '直接影响0' + str(int(i/2+1))][n]
时间: 2024-01-26 11:03:08 浏览: 55
这段代码是将路径信息中的直接影响值赋给对应的数据框列。
1. 通过循环遍历0到34之间的数值,步长为2,即从0到34,每次增加2。循环变量i代表当前数值。
2. 在内部循环中,遍历0到1190之间的数值,循环变量n代表当前内部循环的索引。
3. 使用globals()函数获取变量名为"df" + '0' + str(int(i/2+1))的数据框,并通过`.iloc[n, 0]`的方式选择对应的行和列,即第n行第0列。
4. 将变量globals()['list' + '直接影响0' + str(int(i/2+1))][n]的值赋给所选的单元格。
总之,这段代码的目的是将路径信息中的直接影响值赋给对应的数据框列中。
相关问题
name1 = data1.columns.tolist() arr = np.zeros((35*34,3)) for i in tqdm(range (0,34,2)): #这里需要将ICT两个产业放到最后 globals()['list'+ '0' + str(int(i/2+1))] =[] for j in range (36): if j == i: continue for k in range (36): if k == i or k==j: continue else: globals()['list'+ '0' + str(int(i/2+1))].append(name1[i] + "→" + name1[j] + "→" + name1[k] + "→劳动") globals()['df'+ '0' + str(int(i/2+1))] = pd.DataFrame(arr,columns = ["直接影响","路径乘数","完全影响"],index = globals()['list'+ '0' + str(int(i/2+1))])
这段代码的作用是生成一个包含路径信息的数据框,其中每个路径由三个变量组成:直接影响、路径乘数和完全影响。路径的生成过程是通过循环遍历数据框的列,并根据特定条件来生成路径。具体的逻辑如下:
1. 首先,将数据框的列名转换为一个列表,赋值给变量name1。
2. 创建一个全零矩阵arr,其大小为(35*34, 3),其中35是数据框的列数,34是根据循环条件得到的一个值。
3. 通过循环遍历数据框的列,步长为2,即从0到34,每次增加2。循环变量i代表当前列的索引。
4. 在每次循环开始时,创建一个空列表,赋值给变量list0 + str(int(i/2+1))。这个变量用于存储生成的路径。
5. 在内部循环中,遍历0到36之间的数值,循环变量j代表当前内部循环的索引。
6. 如果j等于i,则跳过当前内部循环。
7. 在第二个内部循环中,再次遍历0到36之间的数值,循环变量k代表当前内部循环的索引。
8. 如果k等于i或者k等于j,则跳过当前内部循环。
9. 否则,将生成的路径信息添加到列表list0 + str(int(i/2+1))中,路径信息由name1[i]、name1[j]、name1[k]和"劳动"组成。
10. 在每次循环结束后,使用列表list0 + str(int(i/2+1))作为索引,创建一个数据框df0 + str(int(i/2+1)),列名为["直接影响", "路径乘数", "完全影响"],并将全零矩阵arr赋值给该数据框。
总之,这段代码的目的是根据特定的条件生成路径信息,并将其存储在相应的数据框中。
阅读全文