Python DataFrame 和函数的运用

2个回答

``````# Import
import pandas as pd

# Specify Info
data = {'姓名':['周杰伦','林俊杰','陈信宏','丁彦仪','杜兰特'],
'语文':[79,65,64,54,24],
'数学':[75,54,65,58,67],
'英语':[56,46,87,45,95]}

df = pd.DataFrame(data)
'''

1. 我们这里采用的是数据导入的形式是我们自己手动输入生成一个【字典】，这个字典当中
包含了四个key-value对，他们分别是‘姓名’、‘语文’、‘数学’、‘英语’，这些就是
他们的key，而value以列表的形式呈现分别表明了这五位同学在每一科上的得分

'''
``````

``````# Def
def normalized(df):
subject_list = df.columns.to_list()
subject_list.remove('姓名')
for subject in subject_list:
print(f'{subject}的学科平均分是:{df[subject].mean()}')
for name in df['姓名'].to_list():
print(f'{name}同学的三科平均分是:'+str(int(df[df['姓名']==name].mean(1))))

'''

'''
``````

pandas的dataframe的同一id的多行数据按其中一个特征将数据平铺该怎么简洁操作？
python pandas用函数算距离时报错

python pandas apply 原理求解，如何在dataframe 中将同一行的某个数值塞进df结构的一列？

dataframe 多列运算形成新的列问题

pandas dataframe数据结构,想检查索引列中的数据是否唯一怎么检查

dataframe 分组后应用自定函数计算,为什么第一个索引会应用两边
Python, list of dictionaries遍历筛选
Python，json转码，list of dictionaries遍历筛选

shc框架将dataframe写入Hbase int型会乱码
Python用shc框架将dataframe写入Hbase int型会乱码，而且读回df同样乱码 ``` df_test_HBase = sql_sc.read.format('jdbc').options(url=jdbc_url_test,driver=jdbc_driver,dbtable='testHBase').load() df_test_HBase.createOrReplaceTempView("test_HBase") df_cast_HBase = sql_sc.sql("select CAST(id as String) id,name,CAST(age as String) age,CAST(gender as String) gender,cat,tag,level from test_HBase") df_cast_HBase.show() dep = "org.apache.spark.sql.execution.datasources.hbase" catalog = """{ "table":{"namespace":"default", "name":"teacher", "tableCoder":"PrimitiveType"}, "rowkey":"key", "columns":{ "id":{"cf":"rowkey", "col":"key", "type":"string"}, "name":{"cf":"teacherBase", "col":"name", "type":"string"}, "age":{"cf":"teacherBase", "col":"age", "type":"string"}, "gender":{"cf":"teacherBase", "col":"gender","type":"string"}, "cat":{"cf":"teacherDetails", "col":"cat","type":"string"}, "tag":{"cf":"teacherDetails", "col":"tag", "type":"string"}, "level":{"cf":"teacherDetails", "col":"level","type":"string"} } } """ df_cast_HBase.write.options(catalog=catalog,newTable="5").format(dep).save() ``` 我目前只能通过Cast函数将int转成String并且把catalog中type为int也改成string后写入HBase才不乱码，但只是治标不治本，求大神给个治本的解决办法！！ 前后对比图： ![图片说明](https://img-ask.csdn.net/upload/201904/28/1556424025_543013.png)

python运行有错误：这是对数据进行分析生成可视化界面的程序(我是小白，请说下解决方法)

nltk统计在超过5000条记录中出现的词
pandas写入csv，字段行业一直重复怎么解决？？？
import requests import json import re import csv import pandas as pd # 获取每个电影分类链接的函数 def get_movie_type(): url='https://movie.douban.com/chart' resp=requests.get(url) result=re.findall(r'<span><a href="(/typerank\?type_name=.*?)">(.*?)</a></span>',resp.text) return result # 获取每种电影前100部: def get_movie_rank(type_url): type_url = 'https://movie.douban.com/j/chart/top_list?' + type_url[23:] + '&start=0&limit=100' resp=requests.get(type_url) return resp.text # 存储 def save(movie): movie=pd.DataFrame([movie],columns=['类型','电影名称','地区','上映日期','评分','排行','地址']) movie.to_csv(r'C:\Users\Administrator\Desktop\python\练习\第五周作业_周峰\test3.csv',mode='a',index=None) def run(): types_url=get_movie_type() for url in types_url: global movie_type_name movie_type_name = url[1] print('正在储存'+movie_type_name+'类型的电影') type_url = url[0] result=get_movie_rank(type_url) #json解析 result=json.loads(result) #获取所需电影信息 for massage in result: #global title,regions,release_date,score,rank,movieurl title=massage['title'] regions=massage['regions'][0] release_date=massage['release_date'] score=massage['score'] rank = massage['rank'] url = massage['url'] movie=[movie_type_name,title,regions,release_date,score,rank,url] # 储存包含电影信息 save(movie) print(movie_type_name + '的类型储存完毕！') run() ![图片说明](https://img-ask.csdn.net/upload/201908/07/1565160682_681298.png)

float is not callable
# 构建月净收入函数 #净收入 = 月薪 - 五险一金 + 奖金 - 个人所得税 def final_income (s,b_avg): df_i = pd.DataFrame ({ '月薪' : [s for i in range (120)], '五险一金': [insurance (s) for i in range (120)], '奖金' : bonus (b_avg) }) df_i['计税部分'] = df_i ['月薪'] + df_i ['奖金'] df_i['个人所得税'] = df_i ['计税部分']. apply(lambda x: tax(x)) df_i['净收入'] = df_i ['月薪'] + df_i ['奖金'] + df_i ['五险一金'] - df_i ['个人所得税'] return df_i result = final_income (10000,1500) result() ``` 这个是我打的代码，但是提示我float is not callable, 自己尝试调试，发现result = final_income (10000,1500) 以上的代码都是正确的， 有没有大佬帮忙指点一下迷津，怎么处理 def tax (salary_sum): if salary_sum <= 3500: return 0 elif salary_sum <= (3500+1500): return (salary_sum - 3500) * 0.03 elif salary_sum <= (3500 + 1500 +3000): return 1500 * 0.03 + (salary_sum- 1500 - 3500) * 0.1 elif salary_sum <= (3500 + 1500 + 3000 + 4500): return 1500 * 0.03 + 3000 * 0.1 + (salary_sum - 1500-3500-3000) * 0.2 elif salary_sum <= (3500 + 1500 + 3000 + 4500 + 26000): return 1500 * 0.03 + 3000 * 0.1 + 4500 * 0.2 + (salary_sum - 1500-3500-3000-4500) * 0.3 elif salary_sum <= (3500 + 1500 + 3000 + 4500 + 26000 + 20000) : return 1500 * 0.03 + 3000 * 0.1 + 4500 * 0.2 + 26000 * 0.25 + (salary_sum - 1500 - 3500 - 3000 - 4500 - 26000) * 0.3 elif salary_sum <= (3500 + 1500 + 3000 + 4500 + 26000 + 20000 + 25000) : return 1500 * 0.03 + 3000 * 0.1 + 4500 * 0.2 + 26000 * 0.25 + 20000 * 0.3 + (salary_sum - 1500 - 3500 - 3000 - 4500 - 26000 - 20000) * 0.35 else: return 1500 * 0.03 + 3000 * 0.1 + 4500 * 0.2 + 26000 * 0.25 + 20000 * 0.3 + 25000 * 0.35 + (salary_sum - 1500 - 3500 - 3000 - 4500 - 26000 - 20000- 25000) * 0.45 test =48016 print ('函数构建完成, 当月薪为%.1f元时， 需要缴纳税费%.2f元'%(test, tax(test))) #魔法函数，为什么不能用 # salary_sum = 10000 # tax = tax (salary_sum) # print ('工资为 '+ str (salary_sum), '税费为' + str(tax) ```

Java学习的正确打开方式

linux系列之常用运维命令整理笔录

Python十大装B语法
Python 是一种代表简单思想的语言，其语法相对简单，很容易上手。不过，如果就此小视 Python 语法的精妙和深邃，那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点，并附上详细的实例代码。如能在实战中融会贯通、灵活使用，必将使代码更为精炼、高效，同时也会极大提升代码B格，使之看上去更老练，读起来更优雅。 1. for - else 什么？不是 if 和 else 才

2019年11月中国大陆编程语言排行榜
2019年11月2日，我统计了某招聘网站，获得有效程序员招聘数据9万条。针对招聘信息，提取编程语言关键字，并统计如下： 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7

JDK12 Collectors.teeing 你真的需要了解一下

SQL-小白最佳入门sql查询一

【图解经典算法题】如何用一行代码解决约瑟夫环问题

“狗屁不通文章生成器”登顶GitHub热榜，分分钟写出万字形式主义大作

GitHub标星近1万：只需5秒音源，这个网络就能实时“克隆”你的声音

《程序人生》系列-这个程序员只用了20行代码就拿了冠军

11月8日，由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办，科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。 　　区块链技术被认为是继蒸汽机、电力、互联网之后，下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力，电力解决了人类基本的生活需求，互联网彻底改变了信息传递的方式，区块链作为构造信任的技术有重要的价值。 　　1...

【技巧总结】位运算装逼指南

【管理系统课程设计】美少女手把手教你后台管理
【文章后台管理系统】URL设计与建模分析+项目源码+运行界面 栏目管理、文章列表、用户管理、角色管理、权限管理模块（文章最后附有源码） 1. 这是一个什么系统? 1.1 学习后台管理系统的原因 随着时代的变迁，现如今各大云服务平台横空出世，市面上有许多如学生信息系统、图书阅读系统、停车场管理系统等的管理系统，而本人家里就有人在用烟草销售系统，直接在网上完成挑选、购买与提交收货点，方便又快捷。 试想，若没有烟草销售系统，本人家人想要购买烟草，还要独自前往药...
4G EPS 第四代移动通信系统

8年经验面试官详解 Java 面试秘诀