我在为 2 个将显示累积分布函数 (CDF) 的示例字符串列表创建 Kolmogorov-Smirnov 图表时遇到困难?
我已经能够计算出Ks_2sampResult(statistic=0.12939662567915355, pvalue=0.4183080902726968)
整个字符串列表,但困难在于如何绘制图表以显示累积频率分布 (CFS)
数据列表示例
列表 1 的子集,例如['team', 'new', 'estate', 'ho', 'ur', 'la', 'pak', 'ebay', 'biz', 'best']
列表 2 的子集,例如['ilsilenzio', 'stilllife', 'mathiasboe', 'achininimeshikaratnasiri', 'andrewdabeka', 'davekhodabux', 'lilytermetz', 'marianhorsley', 'lindacloutier', 'moniquehoogland',]
获取数据列表
def getWikidataList():
with open('./file1.csv', 'r') as f:
read = csv.reader(f)
next(read)
for line in read:
lineitem = line[0].split()[0]
item1 = process_text(lineitem)
wikidatalist.append(item1[0])
return wikidatalist
def getTwitterList1():
with open('file2.csv', 'r') as f:
read = csv.reader(f)
next(read)
for line in read:
lineitem = line[0].split()[0]
item1 = process_text(lineitem)
twitterdatalist.append(item1[0])
return twitterdatalist
wikidatalist = getWikidataList()
twitterData = getTwitterList1()
绘制 CDF
def ks_plot_comp(data_1, data_2):
plt.figure(figsize=(12, 7))
plt.plot(data_1, np.linspace(0, 1, len(data_1), endpoint=False))
plt.plot(data_2, np.linspace(0, 1, len(data_2), endpoint=False))
plt.legend('top right')
plt.legend(['wikidata', 'twitterdata'])
plt.title('Comparing 2 CDFs for KS-Test')
plt.show()
ks_plot_comp(wikidatalist, twitterData)