{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1883\n",
      "样本总量： 89195\n",
      "================================样本0, train:  66896 dev:  22299 dev_type2:  471\n",
      "['{\"id\": 1, \"content\": \"3.新疆棉是全球业界公认的高品质天然纤维原料，较好满足了全球范围内对棉制纺织品服装的刚性消费需求，是中国乃至全球纺织工业健康可持续发展的重要原料保障。近年来，新疆地区不仅棉花种植生产保持稳定，棉纺织及服装产业也迅速发展，为促进地区经济发展、解决各族人民就业、改善民生福祉发挥了重要作用。新疆棉花种植和棉纺产业是全球纺织供应链的重要组成部分，2021年，新疆棉产量512.9万吨，约占全球棉花产量的20%，美国政府打压新疆棉花及其制品的行为，势必严重危害全球纺织产业供应链的安全，损害全球数千万产业工人的切身利益，对此我们表示强烈反对。4.2021年1月，新疆纺织行业协会发布了详实、客观的《新疆棉纺织行业社会责任报告》，报告以详实的数据和资料充分说明中国新疆维吾尔自治区不存在所谓的“强迫劳动”。我们建议全球纺织业界各相关利益方查阅《报告》的内容和观点，尊重从事实出发的价值观，拒绝虚伪的政治操作，反对恶意造谣。我们欢迎包括美国同业在内的国际品牌、机构实地走访考察新疆棉花产区、纺织服装工厂，独立了解、判断相关事实。我们愿为相关考察和贸易投资合作提供便利与协助。\", \"entity\": {\"美国\": 0, \"中国\": 0}}\\n']\n",
      "================================样本1, train:  66896 dev:  22299 dev_type2:  471\n",
      "['{\"id\": 22269, \"content\": \"新华社北京8月27日电美国疾病控制和预防中心日前发布的一项研究结果显示，新冠变异病毒德尔塔毒株成为主要流行毒株后，在美获批的疫苗整体有效性降低约三分之一。研究人员分析了抗疫一线工作人员从2020年12月14日开始的疫苗接种和新冠感染情况。美国多个州的数千名抗疫一线工作人员参加了这项研究，他们每周接受核酸检测。在德尔塔毒株成为主要流行毒株期间，488名没有接种疫苗者中有19人感染，其中有症状感染者的比例为94.7%；2352名完全接种疫苗者中有24人感染，其中有症状感染者的比例为75%。现有研究没有包含感染后的病情严重程度。研究人员分析各种因素后认为，在德尔塔毒株成为主要流行毒株后，美国辉瑞、莫德纳和强生疫苗的整体有效性为66%。而先前发布的数据显示，截至2021年4月10日，这些疫苗的整体有效性为91%。据媒体报道，研究人员计划进一步分析不同疫苗的有效性，以及接种疫苗者和未接种疫苗者被感染后的症状特征等。（完）\", \"entity\": {\"毒株\": 0, \"德尔塔\": 0}}\\n']\n",
      "================================样本2, train:  66896 dev:  22299 dev_type2:  471\n",
      "['{\"id\": 44594, \"content\": \"民航局2022年1月21日发布的熔断指令去年底，多班自美国飞往中国的航班推迟或取消，曾引起关注。中国外交部发言人赵立坚在去年12月就达美航空赴华航班中途返航一事回应表示，近日，多班自美国飞往中国的航班推迟或取消，美国航空在距离飞机起飞仅有数小时的情况下突然宣布取消航班，达美航空的航班甚至出现航程过半后返航情况，给中国籍乘客带来巨大损失。中国驻美使领馆积极向有关乘客提供协助，并第一时间向美国有关航司提出严正交涉，敦促其保障乘客正当权益。中国外交部发言人华春莹去年8月表示，众所周知，国际定期客运航班熔断/熔控措施是降低疫情跨境传播风险的重要举措，该措施对中外航空公司一视同仁，公平公开。在中美航线上，中国国内的国航、东航等航空公司都曾熔断过，对于没有触发熔断条件的航空公司，中方从未实施该措施，因此这次美方没有理由限制中国赴美航班客座率，美方做法非常不合理。为何熔断航班激增值得注意的是，早在去年8月，美国交通部就曾要求中国的航空公司在未来四周内，将部分中国赴美航班的客座率限制在40%，当时也是对于美联航被触发“熔断”措施的回应。\", \"entity\": {\"中国\": 0, \"航班\": 0}}\\n']\n",
      "================================样本3, train:  66897 dev:  22298 dev_type2:  470\n",
      "['{\"id\": 66896, \"content\": \"当地时间11月5日晚，在英国伦敦的“百万面具游行”(Million Mask March）活动过程中，抗议者与警方发生冲突，致8名警察受伤，十余名抗议者被捕。 据英国《卫报》5日报道，当天夜晚，数百名抗议者聚集在英国伦敦，参加一年一度的游行。在游行过程中，参与者抗议政府越权、收入不平等，以及最近新出台的新冠疫情限制措施。 报道称，部分抗议者在游行中与警方发生冲突。伦敦警察厅表示，在伦敦各处的示威活动中，共有12人因各种违法行为被拘捕，此外，已有8名警察在与抗议者的冲突中受伤。 伦敦警察厅还在社交平台发布声明称，“有部分人在议会广场上燃放烟花和爆竹，该行为非常危险。警方为防止民众受到伤害而进入人群。” 据此前报道，“百万面具游行”活动于2011年由一个匿名黑客论坛发起，旨在以游行示威的方式反对审查制度、腐败和战争。\", \"entity\": {\"伦敦\": 0, \"英国\": 0}}\\n']\n"
     ]
    }
   ],
   "source": [
    "from sklearn.model_selection import StratifiedKFold\n",
    "import json\n",
    "with open('E:/Github/Sohu2022/Sohu2022_data/nlp_data/train.txt', 'r', encoding='utf-8') as f:\n",
    "    train_data = f.readlines()\n",
    "tag2_index = []\n",
    "for line in train_data:\n",
    "    line = json.loads(line)\n",
    "    if 2 in set(line['entity'].values()):\n",
    "        tag2_index.append(1)\n",
    "    else:\n",
    "        tag2_index.append(0)\n",
    "print(sum(tag2_index))\n",
    "    \n",
    "print('样本总量：', len(train_data))\n",
    "file_id = 0\n",
    "kfold = StratifiedKFold(n_splits=4).split(train_data, tag2_index)\n",
    "for i, (train_idx, dev_idx) in enumerate(kfold):\n",
    "    train, dev = [train_data[i] for i in train_idx], [train_data[i] for i in dev_idx]\n",
    "    dev_type2 = [tag2_index[i] for i in dev_idx]\n",
    "    with open(f'E:/Github/Sohu2022/Sohu2022_data/nlp_data/dev_{file_id}.txt', 'w', encoding='utf-8') as f:\n",
    "        f.writelines(dev)\n",
    "    with open(f'E:/Github/Sohu2022/Sohu2022_data/nlp_data/train_{file_id}.txt', 'w', encoding='utf-8') as f:\n",
    "        f.writelines(train)\n",
    "    \n",
    "    print(f'================================样本{file_id}, train: ', len(train), 'dev: ', len(dev), 'dev_type2: ', sum(dev_type2))\n",
    "    print(dev[:1])\n",
    "    file_id += 1"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3.8.8 ('base')",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.8"
  },
  "orig_nbformat": 4,
  "vscode": {
   "interpreter": {
    "hash": "e42634819b8c191a5d07eaf23810ff32516dd8d3875f28ec3e488928fbd3c187"
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
