擅长:python、mysql、java
<p>更快的运算速度是好的,但是更好的算法通常会胜过它;-)</p>
<p>补充一点</p>
<pre><code>import numpy as np
import pandas as pd
from scipy.stats import fisher_exact
# data files can be download at
# https://github.com/Saynah/platform/tree/d7e9f150ef2ff436387585960ca312a301847a46/data
meps_meds = pd.read_csv("meps_meds.csv") # 8 cols * 1,148,347 rows
meps_base_data = pd.read_csv("meps_base_data.csv") # 18 columns * 61,489 rows
# merge to get disease and drug info in same table
merged = pd.merge( # 25 cols * 1,148,347 rows
meps_base_data, meps_meds,
how='inner', left_on='id', right_on='id'
)
rx_list = meps_meds.rxName.unique().tolist() # 9218 items
disease_list = meps_base_data.columns.values[8:].tolist() # 10 items
</code></pre>
<p>请注意,<code>rx_list</code>有很多重复项(例如,如果包含拼写错误,则为阿莫西林输入52个条目)。在</p>
<p>那么</p>
^{pr2}$
<p>现在在我的机器上运行大约18分钟,您可以将其与EM28的答案结合起来,将其速度提高4倍或更多。在</p>