1. import pandas as pd
  2. path = r'F:\数据分析专用\数据分析与机器学习\food_info.csv'
  3. with open(path, 'r') as f:
  4. data = pd.read_csv(f)
  5. print(type(data))
  6. print(data.dtypes)
  7. print(help(pd.read_csv))

文件操作

  1. print(data.head(3))
  2. print(data.tail(3))
  3. print(data.columns)

查看数据

  1. data.sort_values('Carbohydrt_(g)', inplace=True)
  2. print(data['Carbohydrt_(g)'])
  3. # print(data)
  4. data.sort_values('Carbohydrt_(g)', inplace=True, ascending=False)
  5. print(data['Carbohydrt_(g)'])

数据排序

  1. age = t_s['Age']
  2. age_is_null = pd.isnull(age)
  3. age_null_true = age[age_is_null]
  4. age_null_count = len(age_null_true)
  5. print(age_null_count)
  6. #----------------------------------------
  7. count_list = []
  8. for i in age:
  9. if i != i:
  10. count_list.append(i)
  11. print(len(count_list))

数据的筛选

  1. mean_age = sum(t_s['Age'])/len(t_s['Age'])
  2. print(mean_age)
  3. #--------------------------------------------------
  4. good_ages = t_s['Age'][age_is_null==False]
  5. correct_mean_age = sum(good_ages)/len(good_ages)
  6. print(correct_mean_age)
  7. #---------------------------------------------
  8. correct_mean_age = t_s['Age'].mean()
  9. print(correct_mean_age)

数据的处理方法(平均数)

  1. passenger_classes = {1, 2, 3}
  2. faces_by_class = {}
  3. for this_class in passenger_classes:
  4. pclass_rows = t_s[t_s['Pclass']==this_class]
  5. pclass_fares = pclass_rows['Fare']
  6. fare_for_class = pclass_fares.mean()
  7. faces_by_class[this_class] = fare_for_class
  8. print(faces_by_class)
  9. #--------------------------------------------------------
  10. passenger_s = t_s.pivot_table(index='Pclass', values='Survived', aggfunc=np.mean)
  11. print(passenger_s)
  12. #--------------------------------------------------------
  13. passenger_age = t_s.pivot_table(index='Pclass', values='Age')
  14. print(passenger_age)
  15. #--------------------------------------------------------
  16. passenger_price = t_s.pivot_table(index='Pclass', values='Fare')
  17. print(passenger_price)
  18. #--------------------------------------------------------
  19. port_stats = t_s.pivot_table(index='Embarked', values=['Fare', 'Survived'], aggfunc=np.sum)
  20. print(port_stats)

数据透视表


  1. def hundredth_row(column):
  2. hundredth_item = column.loc[99]
  3. return hundredth_item
  4.  
  5. hundredth_row = t_r.apply(hundredth_row)
  6. print(hundredth_row)

自定义函数

  1. def which_class(row):
  2. pclass = row['Pclass']
  3. if pd.isnull(pclass):
  4. return 'Unknown'
  5. elif pclass == 1:
  6. return "First Class"
  7. elif pclass == 2:
  8. return "Second Class"
  9. elif pclass == 3:
  10. return "Third Class"
  11.  
  12. classes = t_r.apply(which_class, axis=1)
  13. print(classes)

自定义函数


  1. import pandas as pd
  2. path = r'F:\数据分析专用\数据分析与机器学习\fandango_score_comparison.csv'
  3. with open(path, 'r', encoding='utf-8') as f:
  4. data = pd.read_csv(f)
  5. # print(data.dtypes)
  6. series_film = data['FILM']
  7. print(type(series_film))
  8. series_rt = data['RottenTomatoes']
  9. print(series_rt[0:5])
  10. #--------------------------------------------------------------
  11. from pandas import Series
  12. film_names = series_film.values
  13. print(type(film_names))
  14. rt_scores = series_rt.values
  15. series_custom = Series(rt_scores, index=film_names)
  16. series_custom[['Minions (2015)', 'Leviathan (2014)']]

Series结构

【数据分析学习】Pandas学习记录的更多相关文章

  1. Pandas 学习记录(一)

    1.DataFrame 按照列和按照行进行索引数据 按照列索引 df[’column_name’] 按照行索引 df.loc[’row_key’] 或 df.iloc[index] 2.先行后列索引单 ...

  2. 大数据kafka视频教程 学习记录【B站尚硅谷 】

    视频地址: https://www.bilibili.com/video/av35354301/?p=1           2019/03/06 21:59 消息队列的内部实现: Kafka基础: ...

  3. ElasticSearch 学习记录之 分布式文档存储往ES中存数据和取数据的原理

    分布式文档存储 ES分布式特性 屏蔽了分布式系统的复杂性 集群内的原理 垂直扩容和水平扩容 真正的扩容能力是来自于水平扩容–为集群添加更多的节点,并且将负载压力和稳定性分散到这些节点中 ES集群特点 ...

  4. pandas学习(数据分组与分组运算、离散化处理、数据合并)

    pandas学习(数据分组与分组运算.离散化处理.数据合并) 目录 数据分组与分组运算 离散化处理 数据合并 数据分组与分组运算 GroupBy技术:实现数据的分组,和分组运算,作用类似于数据透视表 ...

  5. pandas学习(创建多层索引、数据重塑与轴向旋转)

    pandas学习(创建多层索引.数据重塑与轴向旋转) 目录 创建多层索引 数据重塑与轴向旋转 创建多层索引 隐式构造 Series 最常见的方法是给DataFrame构造函数的index参数传递两个或 ...

  6. pandas学习(常用数学统计方法总结、读取或保存数据、缺省值和异常值处理)

    pandas学习(常用数学统计方法总结.读取或保存数据.缺省值和异常值处理) 目录 常用数学统计方法总结 读取或保存数据 缺省值和异常值处理 常用数学统计方法总结 count 计算非NA值的数量 de ...

  7. pandas学习(创建数据,基本操作)

    pandas学习(一) Pandas基本数据结构 Series类型数据 Dataframe类型 基本操作 Pandas基本数据结构 两种常用数据结构: Series 一维数组,与Numpy中的一维ar ...

  8. pandas学习(四)--数据的归一化

    欢迎加入python学习交流群 667279387 Pandas学习(一)–数据的导入 pandas学习(二)–双色球数据分析 pandas学习(三)–NAB球员薪资分析 pandas学习(四)–数据 ...

  9. Pandas学习(一)——数据的导入

    欢迎加入python学习交流群 667279387 学习笔记汇总 Pandas学习(一)–数据的导入 pandas学习(二)–双色球数据分析 pandas学习(三)–NAB球员薪资分析 pandas学 ...

随机推荐

  1. TCP连接之未连接队列的理解

    tcp服务器在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接. 第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认 ...

  2. sqlserver日志文件太大解决方法

    SQL Server 的事务日志意外增大或充满的处理方法 事务日志文件Transaction Log File是用来记录数据库更新情况的文件,扩展名为ldf. 在 SQL Server 7.0 和 S ...

  3. Codeforces Round #313 (Div. 2) 560D Equivalent Strings(dos)

    D. Equivalent Strings time limit per test 2 seconds memory limit per test 256 megabytes input standa ...

  4. Visual Studio 2013 与 14

    Visual Studio 2013 与 14 假设有曾经版本号的 Visual Studio.再想安装 Visual Studio 14 CTP,默认情况下是不行的. 假设一定要装,当然也是能够的. ...

  5. Aizu/Aoj 0121 Seven Puzzle

    这题应该算是经典的八数码问题的弱化版吧:给你一个4x2的方版,上面有0-7 八个数字,每次只能让编号0的方格跟他的上下左右的方格交换:所以也就是把方格0当做空格看待,每次只有空格周围的方格能够向空格处 ...

  6. Linux 强行终止

    kill -9 pid pid是进程号 -9 代表的是数字 INT 2 这个就是你在bash下面用Ctrl+C 来结束一个程序时,bash会向进程发送这个信号,默认的,进程收到这个程序会结束. 你可以 ...

  7. To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog]

    Could not load file or assembly 'System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31 ...

  8. 【HDU 1846】 Brave Game

    [题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=1846 [算法] 巴什博弈 若有(m+1)个石子,显然先手不能直接取完,后手必胜 因此,我们可以把石 ...

  9. 杂项-JAVA:MVP

    ylbtech-杂项-JAVA:MVP 简称:MVP 全称:Model-View-Presenter :MVP 是从经典的模式MVC演变而来,它们的基本思想有相通的地方:Controller/Pres ...

  10. 【BZOJ1597】【Usaco2008 Mar】土地购买 斜率优化DP

    题目: 题目在这里 思路与做法: 这题如果想要直接dp的话不太好处理. 不过, 我们发现如果\(a[i].x>=a[j].x\)且\(a[i].y>=a[j].y\) \((\)a是输入的 ...