#修改标题 df.index = ['a', 'b', 'c', 'd','e'] #修改索引名(标题列) df.columns = ['1','2','3','4'] #修改列名名(标题行) # df = df.rename(index={'date': '日期'}) # 为某个index或者columns单独修改名称 print(df) #描述性统计 data = pd.DataFrame(df) print(data['a'].describe()) #情感分析 def label_sentiment(score): #循环计算每一条数据 if score >= 0.6: return "正向" elif score > 0.4: return "中性" else: return "负向" if __name__ == '__main__': df = pd.read_csv(r"C:\Users\lenovo\Desktop\ZZ2-大\ZZ0赛项 \手机\model_comment.csv",encoding='gbk') print(df) c=[] for txt in df.comments: tt = SnowNLP(txt) print(tt.sentiments) #数据(数字) a=label_sentiment(tt.sentiments) c=c+[a] #转起来 b=pd.DataFrame(c) #表格形式 print(b) # b.to_csv(r'C:\Users\lenovo\Desktop\aaa.csv',index=False,encoding='UTF-8') #把计算好的数据导出在导入所需表格达成要求 #排序 # 统计品牌数量 a = data['名称'].value_counts() # 按照品牌数量进行倒序排序 b = a.sort_values(ascending=False) #没有ascending=False 就是倒叙 # 获取前10名品牌 top_10_brands = b.head(10) # 打印结果 pd.set_option('display.max_rows', None) print(top_10_brands) #将某一字段删除 df.replace({'小明':None,'小米':None}, inplace=True) #None是空值 #添加某一列数据 df1['c'] = df2['b'] #需要新建一个表头(不用写内容)把数据替进来达成追加的效果 (这个方法更简单) #需要注意表头 #添加某一行数据 b = df1.iloc[1:2] #通过切片技术获取想要导入的行再利用函数concat进行合并 a = pd.concat([b, df2], ignore_index=True) #合并上下对齐 #注意确保列数一样 #删除某一阈值 df1 = df[(df['b'] > 0)&(df['b'] < 5)] #删除大于5小于零的数 # print(df1['b']) a = len(df['b'])-len(df1['b']) # print(a) df = df.drop(df[(df['某列'] > 100)].index) #统计 b = df['某列'].value_counts() b = len(df1['b']) #不加columns是行,加是列 统计的是最长的一行或一列且不能精确到行或列
kkaaa
最新推荐文章于 2024-07-27 17:39:19 发布