From ad8771c45931d134785fd9ad8f2b3fb3490e77d1 Mon Sep 17 00:00:00 2001 From: HaoYizhi Date: Sun, 11 Jun 2023 22:42:04 +0800 Subject: [PATCH] with exp --- .vscode/launch.json | 2 +- SQL_check_num_dis_firm_in_ts.sql | 1 + SQL_export_high_risk_setting.sql | 6 ++- __pycache__/controller_db.cpython-38.pyc | Bin 7128 -> 8021 bytes conf_db_prefix.yaml | 2 +- controller_db.py | 6 +-- oa_L36.txt | 39 ++++++++++++++ oa_with_exp.csv | 65 +++++++++++++---------- oa_with_exp.xlsx | Bin 0 -> 15833 bytes 9 files changed, 86 insertions(+), 35 deletions(-) create mode 100644 oa_L36.txt create mode 100644 oa_with_exp.xlsx diff --git a/.vscode/launch.json b/.vscode/launch.json index 80f4077..87ed9da 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -12,7 +12,7 @@ "console": "integratedTerminal", "justMyCode": true, "args": [ - "--exp", "without_exp", + "--exp", "with_exp", "--reset_db", "True", "--job", "24" ] diff --git a/SQL_check_num_dis_firm_in_ts.sql b/SQL_check_num_dis_firm_in_ts.sql index a944a04..2d8ccc1 100644 --- a/SQL_check_num_dis_firm_in_ts.sql +++ b/SQL_check_num_dis_firm_in_ts.sql @@ -10,6 +10,7 @@ iiabmdb.with_exp_result where s_id = '54170'; SELECT * FROM iiabmdb.with_exp_sample where id='54170'; +SELECT * FROM iiabmdb.with_exp_experiment where id='1084'; SELECT max(id) FROM iiabmdb.with_exp_sample; select * from diff --git a/SQL_export_high_risk_setting.sql b/SQL_export_high_risk_setting.sql index 0fe1d06..7daf767 100644 --- a/SQL_export_high_risk_setting.sql +++ b/SQL_export_high_risk_setting.sql @@ -1,3 +1,5 @@ +select count(*) from iiabmdb.without_exp_sample; + select distinct s_id from iiabmdb.without_exp_result where ts > 0; select s_id, max(ts) as max_ts from iiabmdb.without_exp_result where ts > 0 group by s_id order by max_ts; select e_id, count(id) as count, max(max_ts) as max_max_ts from iiabmdb.without_exp_sample as a @@ -13,5 +15,5 @@ inner join (select s_id, max(ts) as max_ts from iiabmdb.without_exp_result where on a.id = b.s_id group by e_id) as b on a.id = b.e_id -where count >= 9 -order by count desc; \ No newline at end of file +where count >= 12 +order by count desc; diff --git a/__pycache__/controller_db.cpython-38.pyc b/__pycache__/controller_db.cpython-38.pyc index 4125943e48e1cd721d6831c6341f94a7e1536aee..5bba38ad5b8e02a53b0ab03433db67dc366e6714 100644 GIT binary patch delta 2375 zcmZ`)TWl0n7@jjbJA3I~+U<2qDHBELLfLR9VnMDkCKw55q7_(X_e|T_o!x2AOlb>e zT@{Iv2!R|mF}Rd1|9ZJ{G&R6X{+MMq%xQ=yDLExDq>=AgF zCxP)S$13@TRj}!>QF5ni5UAQ_&K9b$d~etgFUA))j4|d`4cj)0Ra(s7lL%8-%&uBB z-!MJHglcLQGs-ShHT3`3LpIH!-R(r?>`*I@lp@(;@5|S?JB5O0Rwo_nfyq4C2t*n3 zy*ojD@4kTd#AB8>?fAybgvBfa47VDqjdA8qPa4HJ1EWEdQO_tEZp|?BHZ`^w#XQRI zTH)|yuKyaL*l-zzc|a)HvOz7c^jJ;}Lf(`Ugi3Br@c5EO33ui859tuB{jfZIf%wWi z;czMUD{KH*@YW~oQpK@?u;ZH4%aMT0vMi`t&<|7)9dXQRk(yig0QVOx<>>mIZp~+| z<5+Chj{KPIIJb6Bd=rbW%#S#3$#lG}K(suAu&nt;44g;RO^+Uptj({|888#Dy&B;k;E(k#q@nz(3u@Lb{ zukfOq(h<*RXcy>mE5t|9%g-zZmzA(Q2S6clk|C*3f~X5xNCU2&L`j15NGeXWL`sbk zeL-E&Ln*L{>xpoRwEig9RrKi*r(-|&KM]kU}g4kD~Tc<#!D_&U)D1wDBhA@sWfnXz)5h@7SNkFXo_KEEU@hmKFEr4?6>BKZ4`@~mCgIo~5 zC%5ae%;jQL%Gyx{1EvB5;i+kh%`qM6km)$BW+KR{Hf39o=qOG*6}T-&tb$uC!yWgS zE51u@8<;~a@mhuWz%V>8Y!KkwmDTAl)TJJfqcPkT-z>suS%P|bzNF<5U@wbk<_Yq; z*qb>-mW$6agJed0n^{dxiiOPnzT@b?0Rp`=;o2pOX()M3z>B@JfuyWehcoC~j2#o# zI`bRYYE&I+db-F>akb~`(HRsjNBac3 z(-k|7(z6J-9qdj=OdyLTGr3vEkixcdq0y-0`2~D$us2ZJghWH+9}(}nw)uhnaw6}c zc^ZRgvgBL-C_OK$?aQW#E{3w3$$3%AZd>*~+Uo2rw0IjqmhmQ1vRs@Z`#`$>l5Hnl z;?L~KJy>s`IX3M2BGelQcn#$Vm8XMUMD|^PAmRC@ZS9qLc=gKta>^5OE@QA((FVI(*};SI9gwW{82lyv81@F zfIY3PoKvn$&#P|0)r7{>g5n18H^h`JiczzP8#QEmx?kPx>LMugC8&ZM66#(^gxUZ~ zlQqX2#Re8;8Z&oP*ARwnFqH+FzN3QT=OPEWjj#yY0VMw=!?uY^#0l?3+X{&LY7zGEKzn95V_SFVc!Jd9W*MxGM=)LmNpaFSJcSBM+gLa?{w86={*84v|FG zB~k_DlyVE2SFu+0YahqjjGGmT-7OL#BeEj8sEOp8xL3}h0!xU*9fc)D1~K)1a1&*0 z-^OvCDYMFOTK0vG8y<}Q4tQ?zLGupu$S=%(`ImV}9*s^5@979EyHC zR>aD~bjmXb3Yd_FctC?B7!ZX#@^~>0ov#7l6pd^?GM9 zA);!P@ndo#-329iIXzjdk_fHNj0_3)r|rY&_Woz-&(*;ShI8ST!%I$ip>FYhD!OlQ z5$Q*AJ2wSu^4r{17?h*=epr$h^N+&1yqTZvCi}dO;OUj+Mzvybjg%Ym&-}SegF@e# zzF4h07Uwm2w(ID)7pyc^R~$}ntQYR2N(<|}=|6{Abqi}tM9d1e%8pf{bq>f6x=xR* z`f`)6m$=nhtvemJzHeHbXP|63CARS4eyaNqC>}#`ILNyw7re(QW+5)$%S-|H91ucy_kc<#NFA0VI?%fFGF?gxL1Kq7e2mQ!}Bm1~x> z++ZDtw<$>n%Xj6O{xO)A>;1J8oojHtyu!*YK15lv= 9, + list_dct = result.loc[result['count'] >= 12, 'dct_lst_init_remove_firm_prod'].to_list() # list_dct = [{'140': ['1.4.5.1']}] # list_dct = [{'133': ['1.4.4.1']}] @@ -98,9 +98,9 @@ class ControllerDB: g_product_js = json.dumps(nx.adjacency_data(g_bom)) # insert exp - df_xv = pd.read_csv("xv_without_exp.csv", index_col=None) + df_xv = pd.read_csv("xv_with_exp.csv", index_col=None) # read the OA table - df_oa = pd.read_csv("oa_without_exp.csv", index_col=None) + df_oa = pd.read_csv("oa_with_exp.csv", index_col=None) df_oa = df_oa.iloc[:, 0:df_xv.shape[1]] for idx_scenario, row in df_oa.iterrows(): dct_exp_para = {} diff --git a/oa_L36.txt b/oa_L36.txt new file mode 100644 index 0000000..4be1253 --- /dev/null +++ b/oa_L36.txt @@ -0,0 +1,39 @@ +X X X X X X X X X X X X X X X X X X X X X X X +1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 +------------------------------------------------------------------- +1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 +1 1 1 1 1 1 1 1 1 1 1 3 3 3 3 3 3 3 3 3 3 3 3 +1 1 1 1 1 2 2 2 2 2 2 1 1 1 1 2 2 2 2 3 3 3 3 +1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 3 3 1 1 1 1 +1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 1 1 1 1 2 2 2 2 +1 1 2 2 2 1 1 1 2 2 2 1 1 2 3 1 2 3 3 1 2 2 3 +1 1 2 2 2 1 1 1 2 2 2 2 2 3 1 2 3 1 1 2 3 3 1 +1 1 2 2 2 1 1 1 2 2 2 3 3 1 2 3 1 2 2 3 1 1 2 +1 2 1 2 2 1 2 2 1 1 2 1 1 3 2 1 3 2 3 2 1 3 2 +1 2 1 2 2 1 2 2 1 1 2 2 2 1 3 2 1 3 1 3 2 1 3 +1 2 1 2 2 1 2 2 1 1 2 3 3 2 1 3 2 1 2 1 3 2 1 +1 2 2 1 2 2 1 2 1 2 1 1 2 3 1 3 2 1 3 3 2 1 2 +1 2 2 1 2 2 1 2 1 2 1 2 3 1 2 1 3 2 1 1 3 2 3 +1 2 2 1 2 2 1 2 1 2 1 3 1 2 3 2 1 3 2 2 1 3 1 +1 2 2 2 1 2 2 1 2 1 1 1 2 3 2 1 1 3 2 3 3 2 1 +1 2 2 2 1 2 2 1 2 1 1 2 3 1 3 2 2 1 3 1 1 3 2 +1 2 2 2 1 2 2 1 2 1 1 3 1 2 1 3 3 2 1 2 2 1 3 +2 1 2 2 1 1 2 2 1 2 1 1 2 1 3 3 3 1 2 2 1 2 3 +2 1 2 2 1 1 2 2 1 2 1 2 3 2 1 1 1 2 3 3 2 3 1 +2 1 2 2 1 1 2 2 1 2 1 3 1 3 2 2 2 3 1 1 3 1 2 +2 1 2 1 2 2 2 1 1 1 2 1 2 2 3 3 1 2 1 1 3 3 2 +2 1 2 1 2 2 2 1 1 1 2 2 3 3 1 1 2 3 2 2 1 1 3 +2 1 2 1 2 2 2 1 1 1 2 3 1 1 2 2 3 1 3 3 2 2 1 +2 1 1 2 2 2 1 2 2 1 1 1 3 2 1 2 3 3 1 3 1 2 2 +2 1 1 2 2 2 1 2 2 1 1 2 1 3 2 3 1 1 2 1 2 3 3 +2 1 1 2 2 2 1 2 2 1 1 3 2 1 3 1 2 2 3 2 3 1 1 +2 2 2 1 1 1 1 2 2 1 2 1 3 2 2 2 1 1 3 2 3 1 3 +2 2 2 1 1 1 1 2 2 1 2 2 1 3 3 3 2 2 1 3 1 2 1 +2 2 2 1 1 1 1 2 2 1 2 3 2 1 1 1 3 3 2 1 2 3 2 +2 2 1 2 1 2 1 1 1 2 2 1 3 3 3 2 3 2 2 1 2 1 1 +2 2 1 2 1 2 1 1 1 2 2 2 1 1 1 3 1 3 3 2 3 2 2 +2 2 1 2 1 2 1 1 1 2 2 3 2 2 2 1 2 1 1 3 1 3 3 +2 2 1 1 2 1 2 1 2 2 1 1 3 1 2 3 2 3 1 2 2 3 1 +2 2 1 1 2 1 2 1 2 2 1 2 1 2 3 1 3 1 2 3 3 1 2 +2 2 1 1 2 1 2 1 2 2 1 3 2 3 1 2 1 2 3 1 1 2 3 \ No newline at end of file diff --git a/oa_with_exp.csv b/oa_with_exp.csv index ec93a67..6034405 100644 --- a/oa_with_exp.csv +++ b/oa_with_exp.csv @@ -1,28 +1,37 @@ -X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,X11,X12,X13 -0,0,0,0,0,0,0,0,0,0,0,0,0 -0,0,0,0,1,1,1,1,1,1,1,1,1 -0,0,0,0,2,2,2,2,2,2,2,2,2 -0,1,1,1,0,0,0,1,1,1,2,2,2 -0,1,1,1,1,1,1,2,2,2,0,0,0 -0,1,1,1,2,2,2,0,0,0,1,1,1 -0,2,2,2,0,0,0,2,2,2,1,1,1 -0,2,2,2,1,1,1,0,0,0,2,2,2 -0,2,2,2,2,2,2,1,1,1,0,0,0 -1,0,1,2,0,1,2,0,1,2,0,1,2 -1,0,1,2,1,2,0,1,2,0,1,2,0 -1,0,1,2,2,0,1,2,0,1,2,0,1 -1,1,2,0,0,1,2,1,2,0,2,0,1 -1,1,2,0,1,2,0,2,0,1,0,1,2 -1,1,2,0,2,0,1,0,1,2,1,2,0 -1,2,0,1,0,1,2,2,0,1,1,2,0 -1,2,0,1,1,2,0,0,1,2,2,0,1 -1,2,0,1,2,0,1,1,2,0,0,1,2 -2,0,2,1,0,2,1,0,2,1,0,2,1 -2,0,2,1,1,0,2,1,0,2,1,0,2 -2,0,2,1,2,1,0,2,1,0,2,1,0 -2,1,0,2,0,2,1,1,0,2,2,1,0 -2,1,0,2,1,0,2,2,1,0,0,2,1 -2,1,0,2,2,1,0,0,2,1,1,0,2 -2,2,1,0,0,2,1,2,1,0,1,0,2 -2,2,1,0,1,0,2,0,2,1,2,1,0 -2,2,1,0,2,1,0,1,0,2,0,2,1 +X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,X11,X12,X13,X14,X15,X16,X17,X18,X19,X20,X21,X22,X23 +1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 +2,1,1,1,2,1,1,2,2,2,2,2,1,2,1,1,1,1,1,2,2,2,2 +3,1,1,1,3,1,1,3,3,3,3,3,1,3,1,1,1,1,1,3,3,3,3 +1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,3,3,3,3 +2,1,1,1,2,1,1,2,2,3,3,3,2,3,2,2,2,2,2,1,1,1,1 +3,1,1,1,3,1,1,3,3,1,1,1,2,1,2,2,2,2,2,2,2,2,2 +1,1,1,2,1,2,2,2,3,1,2,3,1,3,1,1,2,2,2,1,2,2,3 +2,1,1,2,2,2,2,3,1,2,3,1,1,1,1,1,2,2,2,2,3,3,1 +3,1,1,2,3,2,2,1,2,3,1,2,1,2,1,1,2,2,2,3,1,1,2 +1,1,2,1,1,2,2,3,2,1,3,2,1,3,2,2,1,1,2,2,1,3,2 +2,1,2,1,2,2,2,1,3,2,1,3,1,1,2,2,1,1,2,3,2,1,3 +3,1,2,1,3,2,2,2,1,3,2,1,1,2,2,2,1,1,2,1,3,2,1 +1,1,2,2,2,1,2,3,1,3,2,1,2,3,1,2,1,2,1,3,2,1,2 +2,1,2,2,3,1,2,1,2,1,3,2,2,1,1,2,1,2,1,1,3,2,3 +3,1,2,2,1,1,2,2,3,2,1,3,2,2,1,2,1,2,1,2,1,3,1 +1,1,2,2,2,2,1,3,2,1,1,3,2,2,2,1,2,1,1,3,3,2,1 +2,1,2,2,3,2,1,1,3,2,2,1,2,3,2,1,2,1,1,1,1,3,2 +3,1,2,2,1,2,1,2,1,3,3,2,2,1,2,1,2,1,1,2,2,1,3 +1,2,1,2,2,2,1,1,3,3,3,1,1,2,2,2,1,2,1,2,1,2,3 +2,2,1,2,3,2,1,2,1,1,1,2,1,3,2,2,1,2,1,3,2,3,1 +3,2,1,2,1,2,1,3,2,2,2,3,1,1,2,2,1,2,1,1,3,1,2 +1,2,1,2,2,1,2,2,3,3,1,2,2,1,2,1,1,1,2,1,3,3,2 +2,2,1,2,3,1,2,3,1,1,2,3,2,2,2,1,1,1,2,2,1,1,3 +3,2,1,2,1,1,2,1,2,2,3,1,2,3,2,1,1,1,2,3,2,2,1 +1,2,1,1,3,2,2,2,1,2,3,3,2,1,1,2,2,1,1,3,1,2,2 +2,2,1,1,1,2,2,3,2,3,1,1,2,2,1,2,2,1,1,1,2,3,3 +3,2,1,1,2,2,2,1,3,1,2,2,2,3,1,2,2,1,1,2,3,1,1 +1,2,2,2,3,1,1,2,2,2,1,1,1,3,1,2,2,1,2,2,3,1,3 +2,2,2,2,1,1,1,3,3,3,2,2,1,1,1,2,2,1,2,3,1,2,1 +3,2,2,2,2,1,1,1,1,1,3,3,1,2,1,2,2,1,2,1,2,3,2 +1,2,2,1,3,2,1,3,3,2,3,2,2,2,1,1,1,2,2,1,2,1,1 +2,2,2,1,1,2,1,1,1,3,1,3,2,3,1,1,1,2,2,2,3,2,2 +3,2,2,1,2,2,1,2,2,1,2,1,2,1,1,1,1,2,2,3,1,3,3 +1,2,2,1,3,1,2,1,2,3,2,3,1,1,2,1,2,2,1,2,2,3,1 +2,2,2,1,1,1,2,2,3,1,3,1,1,2,2,1,2,2,1,3,3,1,2 +3,2,2,1,2,1,2,3,1,2,1,2,1,3,2,1,2,2,1,1,1,2,3 diff --git a/oa_with_exp.xlsx b/oa_with_exp.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..484051a2d24661a524218df5614af83d4f0a74dd GIT binary patch literal 15833 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 Gr~e03X1nJA literal 0 HcmV?d00001