转自:https://github.com/icrtiou/Coursera-ML-AndrewNg

1.源码-对数据读取

import numpy as np
import pandas as pd def get_X(df):
"""
use concat to add intersect feature to avoid side effect
not efficient for big dataset though
"""
ones = pd.DataFrame({'ones': np.ones(len(df))})#返回某一长度的全为1的array,这是一个字典
data = pd.concat([ones, df], axis=1) # column concat #按列合并,加上一列1,为b使用
return data.iloc[:, :-1].as_matrix() # this return ndarray, not matrix,选取最后一列作为多维数组返回 def get_y(df):
'''assume the last column is the target'''
return np.array(df.iloc[:, -1])#选最后一列 def normalize_feature(df):
"""Applies function along input axis(default 0) of DataFrame."""
return df.apply(lambda column: (column - column.mean()) / column.std())

1.pandas数据结构Series

转自:https://www.cnblogs.com/linux-wangkun/p/5903380.html

1.1生成指定Series对象

默认的索引是从0开始。

1.2 生成指定索引

//还有其他的一些知识点,根据字典创建以及自动对齐操作等。

2.pd中的concat函数

转自:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.concat.html?highlight=concat

concat函数就是对两个对象进行拼接,默认的axis是0,有点像R中的rbind函数(按行合并),默认是按行合并;

若axis为1,那么即按列合并。

//讲的挺详细的,还有合并两个列名分别相同的数据框,如果列名不完全一样,则用NA补齐。

2.1 内连接

通过join=inner进行内连接合并,对有相同列名的进行合并,然后返回。

join=outer则是取并集,上面是取交集。

3.data.iloc与loc函数

转自:https://blog.csdn.net/llx1026/article/details/77722608

import numpy as np
import pandas as pd
df = pd.DataFrame(np.arange(,,).reshape(,),columns=list('abc')) 结果df:
a b c

其中loc是索引是字符串时使用,iloc是索引是数字时使用,可以实现数据切片。

注意使用df.loc如果取列的话,需要是[:,'列名'],如果直接df.loc['b']报错。

df.loc[:, ['a', 'b']]#取出0,,,3行的a,b两列,
#如果只取一列那么就这样写df.loc[:, 'a']
#如果取多列,那么要把列用[]放在一起如df.loc[:, ['a', 'b']]
输出:
a b
#不想抽取连续的行和列,那么就需要用[]把要取的行和列都列出来
#如下
df.loc[[, ], ['b', 'c']]或df.loc[[, ]][['b', 'c']]

如果嫌列名太长,则使用iloc

下面的是取全部的行和列。

另一种格式,用这个的话会十分省代码:

还有一种就是如下的格式,意思是取出df中第a列中元素等于6的那一行的b列和c列:

df.loc[df['a'] == ][['b', 'c']]

//厉害了。

//这一句的意思就是,取所有行,并且列怎么取?-1这里表示最后一列,也就是除去最后一列。

4.lamda和DataFrame.apply 函数

BGD-py实现学习【1】[转载]的更多相关文章

  1. Py中re.sub学习【转载】

    转自:https://www.crifan.com/python_re_sub_detailed_introduction/ //这个网址讲的不错. 1.re.sub的功能 re是regular ex ...

  2. Py中的多维数组ndarray学习【转载】

    转自:http://blog.sciencenet.cn/home.php?mod=space&uid=3031432&do=blog&id=1064033 1. NumPy中 ...

  3. Py之pandas:dataframe学习【转载】

    转自:https://www.tutorialspoint.com/python_pandas/python_pandas_dataframe.htm 1.数据框4特性 列是不同类型的数据元素. 每列 ...

  4. Python程序员技能表—446家知名企业的Py招聘信息(转载)

    Python程序员技能表—446家知名企业的Py招聘信息 转载: python 正在学习python或者想学习python的可以加群:330637182 正在学习python或者想学习python的可 ...

  5. Github上安卓榜排名第2的程序员教你如何学习【转载,侵删】

    来自:峰瑞资本(微信号:freesvc)文章作者:代码家(微信 ID:daimajia_share) 软件早已吞噬整个世界,程序员是关键角色.过去 40 年中,许多伟大的公司都由程序员缔造,比如比尔· ...

  6. Android之动画的学习(转载)

    Android动画学习笔记-Android Animation   3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中 ...

  7. Redis学习手册——转载

    转载出处:http://www.cnblogs.com/stephen-liu74/archive/2012/04/16/2370212.html 为什么自己当初要选择Redis作为数据存储解决方案中 ...

  8. DIV+CSS系统学习:转载

    第一部分 HTML 第一章 职业规划和前景 职业方向规划定位: web前端开发工程师 web网站架构师 自己创业 转岗管理或其他 web前端开发的前景展望: 未来IT行业企业需求最多的人才 结合最新的 ...

  9. paper 53 :深度学习(转载)

    转载来源:http://blog.csdn.net/fengbingchun/article/details/50087005 这篇文章主要是为了对深度学习(DeepLearning)有个初步了解,算 ...

  10. Hadoop家族学习路线图--转载

    原文地址:http://blog.fens.me/hadoop-family-roadmap/ Sep 6, 2013 Tags: Hadoophadoop familyroadmap Comment ...

随机推荐

  1. 推荐系统之隐语义模型(LFM)

    LFM(latent factor model)隐语义模型,这也是在推荐系统中应用相当普遍的一种模型.那这种模型跟ItemCF或UserCF的不同在于: 对于UserCF,我们可以先计算和目标用户兴趣 ...

  2. css零零散散的笔记

    1.div根据内容自适应大小 效果图: html: <body> <div class="parent"> <div class="chil ...

  3. Linux下进程隐藏的方法及其对抗

    零.背景 在应急响应中,经常碰到ps命令和top命令查不到恶意进程(异常进程)的情况,会对应急响应造成很大的影响.轻则浪费时间,重则排查不出问题,让黑客逍遥法外.所以这篇博客研究学习如何对抗linux ...

  4. 基于spring-cloud的微服务(2) eureka服务提供方的注册和消费方的消费

    启动Eureka注册中心之后,服务提供方就可以注册到Eureka上去(作为一个Eureka的客户端) 我们使用IDEA提供的spring initializer来新建一个springcloud项目 填 ...

  5. 生产环境的gitlab大版本升级思路(从7.x升级到8.x)

    之前在生产环境部署的gitlab是7.x版本的,提供给公司内部的员工来使用,大概有350个用户左右,gitlab从8.x版本之后内置了CI和CD的集成,所以就考虑到升级版本的问题 通过参考和总结git ...

  6. 总结一下最近用到的技术(1)--ultraESB

    最近项目中方法用到了一些新的东西,由于之前没有用到过,现在总结一下,方便以后查阅,本篇文章介绍ultraESB,接下来的文章会介绍JsonSchema,JsonSchamaValidator,Json ...

  7. 【OOP】C++ const成员函数

    预备知识 1.代码转换分析技巧 在早期某些编译器会将C++代码翻译为C代码,然后使用C编译器生成可执行文件.其中翻译的一个转化就是:将this指针显式添加到成员函数的第一个参数位置上,并在成员函数调用 ...

  8. Gradle 教程

    extends:http://www.zhihu.com/question/27866554/answer/38427122 stormzhang博客精华 有一个Gradle 的教程,足够你入门啦. ...

  9. Root Motion的脚本处理

    一.Apply RootMotion的作用 Apply RootMotion:控制角色在场景中动画的运动.角色动画驱动角色运动,类似于在游戏中直接使用动画,提高了动画的使用效率. Root Motio ...

  10. mac操作

    资料搜集: mac终端 常用命令操作 mac osx常用快捷键一览 mac chrome快捷键