详解pandas获取Dataframe元素值的几种方法

可以通过遍历的方法:

pandas按行按列遍历Dataframe的几种方式:https://www.jb51.net/article/172623.htm

选择列

使用类字典属性,返回的是Series类型
data[‘w']
遍历Series

for index in data['w'] .index:
time_dis = data['w'] .get(index)

pandas.DataFrame.at

根据行索引和列名,获取一个元素的值

>>> df = pd.DataFrame([[0, 2, 3], [0, 4, 1], [10, 20, 30]],
...     columns=['A', 'B', 'C'])
>>> df
 A B C
0 0 2 3
1 0 4 1
2 10 20 30
>>> df.at[4, 'B']
2

或者

>>> df.iloc[5].at['B']
4

pandas.DataFrame.iat

根据行索引和列索引获取元素值

>>> df = pd.DataFrame([[0, 2, 3], [0, 4, 1], [10, 20, 30]],
...     columns=['A', 'B', 'C'])
>>> df
 A B C
0 0 2 3
1 0 4 1
2 10 20 30
>>> df.iat[1, 2]
1

或者

>>> df.iloc[0].iat[1]
2

pandas.DataFrame.loc

选取元素,或者行

>>> df = pd.DataFrame([[1, 2], [4, 5], [7, 8]],
...  index=['cobra', 'viper', 'sidewinder'],
...  columns=['max_speed', 'shield'])
>>> df
   max_speed shield
cobra    1  2
viper    4  5
sidewinder   7  8

选取元素

>>> df.loc['cobra', 'shield']
2

选取行返回一个series

>>> df.loc['viper']
max_speed 4
shield  5
Name: viper, dtype: int64

选取行列返回dataframe

>>> df.loc[['viper', 'sidewinder']]
   max_speed shield
viper    4  5
sidewinder   7  8

pandas.DataFrame.iloc
>>> mydict = [{'a': 1, 'b': 2, 'c': 3, 'd': 4},
...   {'a': 100, 'b': 200, 'c': 300, 'd': 400},
...   {'a': 1000, 'b': 2000, 'c': 3000, 'd': 4000 }]
>>> df = pd.DataFrame(mydict)
>>> df
  a  b  c  d
0  1  2  3  4
1 100 200 300 400
2 1000 2000 3000 4000

按索引选取元素

>>> df.iloc[0, 1]
2

获取行的series

>>> type(df.iloc[0])
<class 'pandas.core.series.Series'>
>>> df.iloc[0]
a 1
b 2
c 3
d 4
Name: 0, dtype: int64

到此这篇关于详解pandas获取Dataframe元素值的几种方法的文章就介绍到这了,更多相关pandas获取Dataframe元素值内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2020-06-13

pandas.DataFrame 根据条件新建列并赋值的方法

实例如下所示: import numpy as np import pandas as pd data = {'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen', 'Hangzhou', 'Chongqing'], 'year': [2016,2016,2015,2017,2016, 2016], 'population': [2100, 2300, 1000, 700, 500, 500]} frame = pd.DataFrame(

pandas把dataframe转成Series,改变列中值的类型方法

使用 pd.Series把dataframe转成Series ts = pd.Series(df['Value'].values, index=df['Date']) 使用astype改变列中的值的类型,注意前面要有np df['列名'] = df['列名'].astype(np.int64) 以上这篇pandas把dataframe转成Series,改变列中值的类型方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们. 您可能感兴趣的文章: python panda

pandas实现将dataframe满足某一条件的值选出

在读取数据的时候发现,想把数据中第六列含问号的数据挑出来 import pandas as pd data = pd.read_table('breast-cancer-wisconsin.data.txt',header=None,encoding='gb2312',sep=',') data = data.drop(0, axis=1) data = data[data[6] != '?'] 以上这篇pandas实现将dataframe满足某一条件的值选出就是小编分享给大家的全部内容了,希望

pandas DataFrame 行列索引及值的获取的方法

pandas DataFrame是二维的,所以,它既有列索引,又有行索引 上一篇里只介绍了列索引: import pandas as pd df = pd.DataFrame({'A': [0, 1, 2], 'B': [3, 4, 5]}) print df # 结果: A B 0 0 3 1 1 4 2 2 5 行索引自动生成了 0,1,2 如果要自己指定行索引和列索引,可以使用 index 和 column 参数: 这个数据是5个车站10天内的客流数据: ridership_df = pd

pandas DataFrame的修改方法(值、列、索引)

对于DataFrame的修改操作其实有很多,不单单是某个部分的值的修改,还有一些索引的修改.列名的修改,类型修改等等.我们仅选取部分进行介绍. 一.值的修改 DataFrame的修改方法,其实前面介绍loc方法的时候介绍了一些. 1. loc方法修改 loc方法实际上是定位某个位置的数据的,但是定位完以后就可以对此位置的数据进行修改,使用此方法可以对DataFrame进行的修改如下: 1.对某行.某N行进行修改: 2.对某列.某N列进行修改: 3.对横坐标为某行或某N行,纵坐标为某列或者某N列的

对Pandas DataFrame缺失值的查找与填充示例讲解

查看DataFrame中每一列是否存在空值: temp = data.isnull().any() #列中是否存在空值 print(type(temp)) print(temp) 结果如下,返回结果类型是Series,列中不存在空值则对应值为False: <class 'pandas.core.series.Series'> eventid False iyear False imonth False iday False approxdate True extended False reso

Python pandas DataFrame基础运算及空值填充详解

目录 前言 数据对齐 fill_value 空值api dropna fillna 总结 前言 今天我们一起来聊聊DataFrame中的索引. 上一篇文章当中我们介绍了DataFrame数据结构当中一些常用的索引的使用方法,比如iloc.loc以及逻辑索引等等.今天的文章我们来看看DataFrame的一些基本运算. 数据对齐 我们可以计算两个DataFrame的加和,pandas会自动将这两个DataFrame进行数据对齐,如果对不上的数据会被置为Nan(not a number). 首先我们来

解决pandas.DataFrame.fillna 填充Nan失败的问题

如果单独是 >>> df.fillna(0) >>> print(df) # 可以看到未发生改变 >>> print(df.fillna(0)) # 如果直接打印是可以看到填充进去了 >>> print(df) # 但是再次打印就会发现没有了,还是Nan 将其Nan全部填充为0,这时再打印的话会发现根本未填充,这是因为没有加上参数inplace参数. 一定要将inplace = True加入参数,这样才能让源数据发生改变并保存. &g

pandas数据清洗(缺失值和重复值的处理)

目录 前言 缺失值处理 缺失值的判断 缺失值统计 缺失值筛选 缺失值类型 插入缺失值 缺失值填充 插值填充 interpolate() 的具体参数 缺失值删除 缺失值删除 dropna 重复值处理 重复值查找 删除重复值 drop删除数据 数据替换replace 字符替换 缺失值替换 数字替换 数据裁剪df.clip() 前言 pandas对大数据有很多便捷的清洗用法,尤其针对缺失值和重复值.缺失值就不用说了,会影响计算,重复值有时候可能并未带来新的信息反而增加了计算量,所以有时候要进行处理.针

Python3.5 Pandas模块缺失值处理和层次索引实例详解

本文实例讲述了Python3.5 Pandas模块缺失值处理和层次索引.分享给大家供大家参考,具体如下: 1.pandas缺失值处理 import numpy as np import pandas as pd from pandas import Series,DataFrame df3 = DataFrame([ ["Tom",np.nan,456.67,"M"], ["Merry",34,345.56,np.nan], [np.nan,np

详解Pandas 处理缺失值指令大全

前言 运用pandas 库对所得到的数据进行数据清洗,复习一下相关的知识. 1 数据清洗 1.1 处理缺失数据 对于数值型数据,分为缺失值(NAN)和非缺失值,对于缺失值的检测,可以通过Python中pandas库的Series类对象的isnull方法进行检测. import pandas as pd import numpy as np string_data = pd.Series(['Benzema', 'Messi', np.nan, 'Ronaldo']) string_data.is

pandas返回缺失值位置的方法实例教程

目录 pandas返回缺失值位置 附:Pandas查找缺失值的位置,并返回缺失值行号以及列号 总结 pandas返回缺失值位置 有的时候我们可能需要获取一些缺失值的信息,因此我们需要获取这些缺失值在DataFrame中的位置. 假如我们的DataFrame的索引为数值顺序索引,要返回缺失值的位置 import numpy as np import pandas as pd 我们首先构建一个有缺失值的DataFrame df = pd.DataFrame({'A':[1, 2, 3, np.nan

Python3 DataFrame缺失值的处理方法

目录 一.缺失值的判断 二.缺失值数据的过滤 三.缺失值数据的填充 四.缺失值的删除 一.缺失值的判断 在通过Pandas做数据分析时,数据中往往会因为一些原因而出现缺失值NaN (Nota number)o比如前文中的例子,当两个DataFrame对象进行简单运算时,无法匹配的位置会出现缺失值NaN或者None. isnull ( )和notnull ( )方法都可以用于判断数据是否为缺失值( NaN或者None).如果是缺失值,则isnull()返回值为True, notnull()返回值为

Python pandas处理缺失值方法详解(dropna、drop、fillna)

目录 面对缺失值三种处理方法: 对于option1: 对于option 2: 对于option3 总结 面对缺失值三种处理方法: option 1: 去掉含有缺失值的样本(行) option 2:将含有缺失值的列(特征向量)去掉 option 3:将缺失值用某些值填充(0,平均值,中值等) 对于dropna和fillna,dataframe和series都有,在这主要讲datafame的 对于option1: 使用DataFrame.dropna(axis=0, how='any', thres

python sklearn与pandas实现缺失值数据预处理流程详解

注:代码用 jupyter notebook跑的,分割线线上为代码,分割线下为运行结果 1.导入库生成缺失值 通过pandas生成一个6行4列的矩阵,列名分别为'col1','col2','col3','col4',同时增加两个缺失值数据. import numpy as np import pandas as pd from sklearn.impute import SimpleImputer #生成缺失数据 df=pd.DataFrame(np.random.randn(6,4),colu