客户需求
DataFrame通过行、列索引,获取指定位置的值
python代码如下
import pandas as pd
df=pd.DataFrame([[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]],
index=list(['第一行','第二行','第三行','第四行']),
columns=list(['第一列','第二列','第三列','第四列']))
print('查看df行索引:', df.index)
print('查看df列索引:', df.columns)
print('----------------输出df-------------')
print(df)
num = df.iat[1,1]
print('输出按数字索引所取的值:', num)
name =df.at['第一行','第二列']
print('输出按索引名称所取的值:', name)
len = len(df.values)
value=df.iat[len-1,1]
print('输出df的行数:',len)
print('输出最后一行,第二列的值:',value)
代码运行结果
D:\Python\Anaconda\python.exe C:/Users/Administrator/Desktop/Python-week/test.py
查看df行索引: Index(['第一行', '第二行', '第三行', '第四行'], dtype='object')
查看df列索引: Index(['第一列', '第二列', '第三列', '第四列'], dtype='object')
----------------输出df-------------
第一列 第二列 第三列 第四列
第一行 1 2 3 4
第二行 5 6 7 8
第三行 9 10 11 12
第四行 13 14 15 16
输出按数字索引所取的值: 6
输出按索引名称所取的值: 2
输出df的行数: 4
输出最后一行,第二列的值: 14
Process finished with exit code 0
如果要获取某一列数据有两种方式:
import pandas as pd
series = pd.Series(range(5), index = ['a', 'b', 'c', 'd', 'e'])
df = pd.DataFrame(np.arange(9).reshape(3,3),index = ['a','b','c'],columns = ['A','B','C'])
a = df['A']
b = df.A
print(a, '\n', "*"*30, '\n', b)
输出结果:
import pandas as pd
import numpy as np
df1 = pd.DataFrame(np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]),
columns=['a', 'b', 'c'],index=['i1','i.
本文主要展示
dataframe数据导入后如何获得
行标签和
列标签
df = pd.
DataFrame([[0, 2, 3], [0, 4, 1], [10, 20, 30]],
columns=['A', 'B', 'C'],
index = ['a','b','c'])
user_index = list(df.index.values)#
行标签
user_col = list(df.columns.values)#
列标签
Python Pandas中Dataframe对象,如何根据列值筛选满足条件的行,并且返回列的索引值,我们举栗子说明一下:
1.先创建一个dataframe变量df:
df = pd.DataFrame(np.arange(16).reshape(4,4),
#index = pd.date_range('20200301', periods=4),
index = list('hjkl'),
columns = list('ABCD'))
df =df.append(df)
df的样子如下
import pandas as pd
dict=[[1,2,3,4,5,6],[2,3,4,5,6,7],[3,4,5,6,7,8],[4,5,6,7,8,9],[5,6,7,8,9,10]]
data=pd.
DataFrame(dict)
print(data)
for indexs in data.index:
print(data.loc[indexs].values[0:-1])
实验结果:
/usr/bin/python3.4 /home/ubuntu/PycharmProjects/pyth
DataFrame是Python当中的一个非常强大的数据分析工具,它非常适合于数据的处理和分析,特别是处理结构化数据,建立数据框架后,行和列可以互换,但是如果不给DataFrame进行行索引,那么DataFrame可能会存在一些问题。
如果一个DataFrame没有指定行索引,则行记录的顺序将无法保持不变。因此,DataFrame默认使用从0开始的数字行索引,这种情况下,可能会出现许多不利的情况。
首先,操作DataFrame时需要做的很多步骤都会基于行索引展开,比如,获取数据框架的某一元素、选取行记录、筛选数据、合并数据等等。
另外,在进行复杂操作的时候,由于DataFrame不设置行索引,很容易导致出现数据不一致的情况,可能会造成计算结果的不准确,特别是当两个数据框架显示相同但实际内容不同的时候。
最后,如果没有指定行索引,DataFrame也将变得不同步,可能会造成不稳定和不可预测的行为。
综上所述,DataFrame是一个非常重要的数据分析工具,但是在使用它的时候,一定要注意给它设置行索引,才能保证数据分析的准确性和可靠性。