# In[1]
import os
path = '/home/zjdou/jupyter/root/Smart-Writing/TextClassification/DATA'
os.chdir(path)
print(os.getcwd())
# In[2]
import pandas as pd
import numpy as np
file01 = pd.read_json('./raw_data/gov01.json')
file01
file02 = pd.read_json('./raw_data/gov02.json')
file02
total = file01.append(file02, ignore_index=True)
# In[1]
total
# In[2]
no_label_idx = total[total['topics'].apply(lambda x:x[0]) == ''].index
no_label_idx
total.drop(no_label_idx, inplace=True)
total.reset_index(drop=True, inplace=True)
# In[2]
total['topics'] = total['topics'].apply(lambda x:x[0])
total
total.to_json('./swtc/total.json')
# In[4]
# 分割数据
total = pd.read_json('./swtc/total.json')
# idx = total[total['topics'].apply(lambda x:x.find('/') != -1)].index
# total.iloc[idx]
total['topics'] = total['topics'].apply(lambda x:x.replace('/', '-'))
# idx = total[total['topics'].apply(lambda x:x.find('/') != -1)].index
# total.iloc[idx]
total.to_json('./swtc/total.json')
total
# In[1]
total['topics'] = total['topics'].apply(lambda x:x if x.find('-') != -1 else x+'-其他')
total.to_json('./swtc/total.json')
# In[4]
shuffle_total = total.sample(frac=1).reset_index(drop=True)
shuffle_total
# In[1]
total_len = len(shuffle_total)
train_len = total_len // 10 * 8
dev_len = total_len // 10 * 1
test_len = total_len - train_len - dev_len
print(train_len, dev_len, test_len)
train = shuffle_total.iloc[:train_len]
train.to_json('./swtc/smartwrite2_train.json')
dev = shuffle_total.iloc[train_len:train_len + dev_len]
dev.to_json('./swtc/smartwrite2_dev.json')
test = shuffle_total.iloc[train_len+dev_len: train_len+dev_len+test_len]
test.to_json('./swtc/smartwrite2_test.json')
# %%
# train.to_json('./swtc/')
# pd.read_json('./swtc/smartwrite_dev.json')
# a = pd.read_json('./raw_data/国务院部门文件_国务院政策文件库_中国政府网.json')
# b = pd.read_json('./raw_data/国务院文件_国务院政策文件库_中国政府网.json')
# len(a) + len(b)
# %%
train = pd.read_json('./swtc/smartwrite2_train.json')
train
dev = pd.read_json('./swtc/smartwrite2_dev.json')
dev
test = pd.read_json('./swtc/smartwrite2_test.json')
test
# In[1]
topics = total['topics'].to_list()
print(topics)
# all_topics = len(topics)
# print(all_topics)
dup_topics = list(set(topics))
print(dup_topics, len(dup_topics))
# %%
pandas处理行数据
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
上一篇:动态规划面试题
下一篇:显著性实验分析python
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
批量处理DataFrame行数据(pandas)
写在前面批量处理 pandas.DataFrame 行列数据20200212,效率不怎么高代码实现方法1:
批量处理行数据 pandas dataframe 数据 批量处理 -
使用Pandas进行数据预处理 笔记2 任务 5.2 清洗数据
文章目录任务 5.2 清洗数据5.2.1 检测与处理重复值5-9 利用list去重5-10
python 开发语言 后端 插值 数据 -
pandas数据处理
重复值处理 | 数据类型转换 | 字段拆分
字段 数据 数据分析 日期时间 数据类型 -
pandas处理Excel数据
pandas数据转换成 numpy 数据DataFrame 转换成 ndarrayarray(data容...
python 机器学习 numpy pandas 数据