2018-12-10

2018-12-10  本文已影响0人  透明的红萝卜123

2018.12.9

#面对一个10G的大文件,nrows =4000表示读取前4000条数据,
df = pd.read_csv('sample_train/common_features_train.csv',nrows =4000,header = None)

header:表头,默认不为空(为 0,也即将第一行视为表头)。如果我们要读取的文件,直接就是数据,没有所谓的表头。就需指定 header=None,否则将以文件的第一行作为 df.columns。指定 header=None,df.columns 返回的是列索引,如一个三列的数据:
Int64Index([0, 1, 2], dtype='int64')

背景

import pandas as pd
import numpy as np
df = pd.DataFrame(data=np.random.randint(low=1,high=4,size=(2,3)), columns=["a","b","c"])

选取某一列元素

得到的是一个series对象

依据属性名选择
acol = df[‘a’] #选择a属性列,返回的是Series类型
acol = df[[‘a’]] #选择a属性列,返回的是dataframe类型
columnName = atoll.name
#根据(名称)列名为2,第i个元素,可以理解为2列i行
feature_list = df[2][i].split('\x01')
依据下标选择

选择多列元素
abcol = df[[‘a’,’b’]]
abcol = df.loc[:,[‘a’,’b’]]
data.loc['a',['w','x']] #返回‘a’行'w'、'x'列,这种用于选取行索引列索引已知
利用下标
acol = df.iloc[:,0]
Abcol = df.iloc[:,[0,1]]
Abcol = df.iloc[:,[0:1]]

选择某行元素

r1 = df[0:1]
选择满足条件的那些行
Condition1 = df[‘a’]==1
Condition2 = df[‘b']>=2
Condition3 = condition1 & condition2
Subdf = df[condition1]
Subdf = df[condition3]
上一篇下一篇

猜你喜欢

热点阅读