关于csv的操作

1、将test中date分解成多列

pd.concat([test, test['date'].str.split('-', expand=True)], axis=1)

此时的test增加了三列,但是,加的列没有名称,这时,修改列名。

修改date名为5

test.rename(columns={'date':'5'}, inplace = True)

2、对于年这类位数比较大的数,一个阶段分为一类。

#查看各个数值分布。

target.value_counts()

def year(x):
    if 1920<=x<=1930:
        return 0
    elif  1930<x<=1940:
        return 1
    elif  1940<x<=1950:
        return 2
    elif  1950<x<=1960:
        return 3
    elif  1960<x<=1970:
        return 4
    elif  1970<x<=1980:
        return 5
    elif  1980<x<=1990:
        return 6
    elif  1990<x<=2000:
        return 7
    
feature["year"]=feature["year"].map(year)
  

3、假如年月日为一列,将其分解为年,月...

feature['date'] = pd.to_datetime(feature['date'],format='%Y-%m-%d %H:%M:%S')

#这里的format主要看date里面的形式,若只有年月日,则是format='%Y-%m-%d'

#为了更好的寻找规律,可以将日变成星期。
feature["weekday"]=feature["date"].dt.weekday
feature["year"]=feature["date"].dt.year
feature["month"]=feature["date"].dt.month

4、为了数据处理方便,可以将train和test结合为一个表。

feature = pd.concat((train,test),axis=0)

原文地址:https://www.cnblogs.com/wzwi/p/10840954.html