Pandas数据处理

数据处理代码Pandas:

from sklearn.preprocessing import MinMaxScaler

data = [[-1,2],

        [-0.5,6],

        [0.,10],

        [1,18]]

# 将 numpy 转换成 pd 表

pd.DataFrame(data) 

# 归一化  【0,1】 之间

scaler = MinMaxScaler()  # 实例化

scaler = scaler.fit(data) # fit , 生成 min(x) 和 max(x)

result = scaler.transform(data)  # 通过接口导出 结果

data2 = scaler.inverse_transform(result)  # 反转回去到 原 data

scaler = MinMaxScaler(feature_range=[5,10])  # 归一化到 【5, 10】之间

result = scaler.fit_transform(data2)

data.info() # 查看数据的基本情况

# 查看是否存在 nan

df.isnull().values.any()

# 读取原始数据

trian = pd.read_csv(path)

# drop_duplicates 去除重复项

all_customer = pd.DataFrame(trian[['customer_id']]).drop_duplicates(['customer_id']).dropna()

# 转成 pandas 格式的日期形式

trian['order_pay_time'] = pd.to_datetime( trian['order_pay_time'])

trian['order_pay_date'] = trian['order_pay_time'].dt.date

# 改变数据类型, .astype(str) <=  进行比较

trian['order_pay_date'].astype(str) <='2013-07-03'

# iloc[r_start:r_end , c_start: c_end]  index 值

status2 = train.iloc[x,20]  

# 修改某个值

all_customer.loc[all_customer['customer_id'] ==6 ,'mermber_status'] = mermber_status2

# 去除 customer_id = Null 的所有行

train.drop(train[train['customer_id'].isnull()].index)

# 按照 customer_id 来分组,并计算每一组的 customer_id 的数量

customer_id = train.groupby(['customer_id'] )['count'].agg({'count':'count'})

# 用户是否已评价 0-未评,1-评价   有缺失值Nan

train.loc[train['is_customer_rate'].isnull() , 'is_customer_rate'] = 0

# 增加一列,并且指定值

all_customer['mermber_status'] = 'one_values'

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值