跑python代码时用到的一些输出方法

1、输出到txt文档,‘a’表示不覆盖源文件在末尾写,‘w’是覆盖

with open("1.txt", "a") as f:
        f.writelines('\n' + "job_sequencing: {}".format(sqc_data))

2、将数据输出到excel,显示成折线图

import pandas as pd

reward_list = []

# example of a real reward function
    def store_result(self, reward):
        '''
        store reward
        '''
        reward_list.append(reward)

        each_reward_file = pd.DataFrame(reward_list)
        if self.m_idx == 0:
            each_reward_file.to_csv('./reward/3/0_reward.csv')
        if self.m_idx == 1:
            each_reward_file.to_csv('./reward/3/1_reward.csv')
        if self.m_idx == 2:
            each_reward_file.to_csv('./reward/3/2_reward.csv')
        if self.m_idx == 3:
            each_reward_file.to_csv('./reward/3/3_reward.csv')

    def get_reward1(self):
    	...
        rwd = ((rwd_slack + rwd_winq)/20).clip(-1,1)
        r_t = torch.tensor(rwd , dtype=torch.float)
        x = r_t.numpy()
        self.store_result(x)
        return r_t
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

Y_value=[]
X_value=[]

r_n=36
l_n=1

def AeragList(list,count):
    newlis=[]
    #each_r=0
    for i in range(len(list)):
        #count = r_n =180
        if i!=0 and i % count == 0:
            #所有轮的均值集合
            newlis.append(averagenum(list[i-count:i]))
            #each_r += list[1]
    return newlis

def averagenum(num):
    nsum = 0
    for i in range(len(num)):
        nsum += num[i]
    return nsum / len(num)


'''
reward
'''

all_r=[]
reward_data=pd.read_csv('./reward/2/3_reward.csv') #原MADDPG

for row in reward_data.values.tolist():
    a=row[1:][0]
    all_r.append(row[1:][0])

# all_reward=AeragList(all_r, r_n)
# plt.plot(all_reward,color='red')

all_reward=AeragList(all_r, 100)
plt.plot(all_reward,color='red')

plt.ylabel("REWARD")
plt.show()


# '''
# --------------COUNT----------------------------------------------------------------
# '''
# A1_N=[]
# A2_N=[]
# A3_N=[]
# A4_N=[]
# A5_N=[]
# A6_N=[]
# A7_N=[]
# A8_N=[]
# A9_N=[]
# all_N=[]
#
# N_data=pd.read_csv('./reward/each_count.csv')
# for row in N_data.values.tolist():
#     A1_N.append(row[1])
#     A2_N.append(row[2])
#     A3_N.append(row[3])
#     A4_N.append(row[4])
#     A5_N.append(row[5])
#     A6_N.append(row[6])
#     A7_N.append(row[7])
#     A8_N.append(row[8])
#     A9_N.append(row[9])
#     a=row[1:]
#     #每一次所有路口的均值
#     all_N.append((np.sum(row[1:]))/9)
#
# A1_N = AeragList(A1_N, r_n)
# A2_N = AeragList(A2_N, r_n)
# A3_N= AeragList(A3_N, r_n)
# A4_N = AeragList(A4_N, r_n)
# A5_N = AeragList(A5_N, r_n)
# A6_N = AeragList(A6_N, r_n)
# A7_N = AeragList(A7_N, r_n)
# A8_N = AeragList(A8_N, r_n)
# A9_N = AeragList(A9_N, r_n)
# #
# all_N= AeragList(all_N, r_n)
#
# # plt.plot(A1_N,color='red')
# # plt.plot(A2_N,color='red')
# # plt.plot(A3_N,color='red')
# # plt.plot(A4_N,color='red')
# # plt.plot(A5_N,color='red')
# # plt.plot(A6_N,color='red')
# # plt.plot(A7_N,color='red')
# # plt.plot(A8_N,color='red')
# # plt.plot(A9_N,color='red')
# plt.plot(all_N,color='red')
# plt.ylabel("total N")
# plt.show()
#
# A1_W=[]
# A2_W=[]
# A3_W=[]
# A4_W=[]
# A5_W=[]
# A6_W=[]
# A7_W=[]
# A8_W=[]
# A9_W=[]
# all_W=[]
#
# w_data=pd.read_csv('./reward/each_wait.csv')
# for row in w_data.values.tolist():
#     A1_W.append(row[1])
#     A2_W.append(row[2])
#     A3_W.append(row[3])
#     A4_W.append(row[4])
#     A5_W.append(row[5])
#     A6_W.append(row[6])
#     A7_W.append(row[7])
#     A8_W.append(row[8])
#     A9_W.append(row[9])
#     a=row[1:]
#     all_W.append((np.sum(row[1:]))/9)
#
# A1_W = AeragList(A1_W, r_n)
# A2_W = AeragList(A2_W, r_n)
# A3_W= AeragList(A3_W, r_n)
# A4_W = AeragList(A4_W, r_n)
# A5_W = AeragList(A5_W, r_n)
# A6_W = AeragList(A6_W, r_n)
# A7_W = AeragList(A7_W, r_n)
# A8_W = AeragList(A8_W, r_n)
# A9_W = AeragList(A9_W, r_n)
# all_W= AeragList(all_W, r_n)
#
# # plt.plot(A1_W,color='red')
# # plt.plot(A2_W,color='red')
# # plt.plot(A3_W,color='red')
# # plt.plot(A4_W,color='red')
# # plt.plot(A5_W,color='red')
# # plt.plot(A6_W,color='red')
# # plt.plot(A7_W,color='red')
# # plt.plot(A8_W,color='red')
# # plt.plot(A9_W,color='red')
# plt.plot(all_W,color='red')
# plt.ylabel("Wait_time")
# plt.show()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值