python学习之pandas基本操作

一、数据操作

#数据实操
#pandas读入外部数据
a = pd.read_csv("C:/Users/32403/Desktop/岭回归.csv")
print(a)
#对数据排序,可以查看最高或者最低数
b = a.sort_values(by="HR",ascending=False)
print(b)
#整体取前100行
print(b[:100])
#按照某一列取行数
print(b["HR"])
#同时选择行与列
print(b[:100]["HR"])

#pandas之loc,优化取值方式
#t.loc()通过-标签-进行索引
print(t.loc["A","W"])
print(t.loc["A",["W","Z"]])
print(t.loc[["A","C"],["W","Z"]])
print(t.loc["A":"C",["W","Z"]]) #等价于 t.loc["A":,["W","Z"]]
print(t.loc["A":"C","W":"Z"])

二、切片与索引。

#pandas之iloc学习,位置索引函数
print(t.iloc[1:3,[2,3]])
print(t.iloc[[1,2],2])  
print(t.iloc[1:3,1:3])
#pandas之布尔索引
t[t["W"]>1]
#条件布尔索引
print(b)
print(b[b["HR"]>15]&b[b["WEEK_DAY"]>6]) # 同时满足两条件
print(b[b["HR"]>15]|b[b["WEEK_DAY"]>6]) # OR

#pandas之字符串方法
#常用方法
contains #返回表示个字符串是否含有指定模式的布尔型数组
len#计算各字符串的长度
lower、upper#转换大小写,相当于各个元素执行x.lower和x.upper
replace #用指定字符串替换找到的模式
split#根据分隔符或正则表达式对字符串进行划分

三、缺失值处理

#查找缺失
pd.isnull(b)
pd.notnull(b)
#处理
#处理方式1:删除NaN所在的行列
dropna (axis=0, how='any', inplace=False)
#处理方式2:填充数据,
t.fillna(t.mean())
t.fiallna(t.median())
t.fillna(0)
#处理为0
t[t==0] = np.nan

四、数据处理函数 


#
pandas常用统计函数 t.["W"].mean() temp_list = df["Actors"].str.split(",").tolist() nums = set([i for j in temp_list for i in j] 

data['origin'].replace("america","America",inplace=True)   
# 将第一个值替换为第二个值,inplace默认为False
data['origin']

data['money'].replace(-10,np.nan,inplace=True)                    # 将负值替换为空值
data['money'].replace(np.nan,data['money'].mean(),inplace=True)   # 将空值替换为均值
data['money']
 

data1 = data[data.origin != 'American'] #去掉origin为American的行
data1
data2=data[(data != 'Japan').all(1)]    #去掉所有包含Japan的行    不等于Japan的行为真,则返回
data2
 

 

posted @ 2020-11-02 19:42  上虞牧之  阅读(143)  评论(0)    收藏  举报