数据分析 任务3

运行代码

python 复制代码
#载入Pandas包来读取csv格式的数据集
import pandas as pd
import datetime
#把csv格式的数据集导入到DataFrame对象中
df = pd.read_csv('D:\\downLoadSoft\\UQg6Mff9WkWLZpBGwxlYJyZfwbWUhRv3jNo3GDsS\\Deep learning\\lossertest.csv',
                 header = 0)
#在jupyter notebook中查看df时直接在代码框输入df即可:
df.head()

#在其他编程环境则需要通过print()来实现输出:
print(df.head())

df.info()

#利用pandas中的to_datetime函数把字符串的日期变为时间序列
df['registrationTime'] = pd.to_datetime(df['registrationTime'], format='%Y/%m/%d %H:%M')
df['registrationTime']

#同理转化为实践序列
df['lastLoginTime'] = pd.to_datetime(df['lastLoginTime'], format='%Y/%m/%d %H:%M')
df['lastLoginTime']


#获取当前时间
now_time = datetime.datetime.now()
now_time

#把数据序列转化为距今的时间间隔
df['registrationTime'] = now_time-df['registrationTime']
df['lastLoginTime'] = now_time-df['lastLoginTime']
print(df['registrationTime'])
print(df['registrationTime'])

#把最近登录时间列的空值替换为同索引行注册时间列的值
df.loc[df['lastLoginTime'].isnull(),'lastLoginTime']=df[df['lastLoginTime'].isnull()]['registrationTime']

# registrationTime
for i in range(len(df['registrationTime'])):
    df['registrationTime'][i] = df['registrationTime'][i].days

# lastLoginTime
for i in range(len(df['lastLoginTime'])):
    df['lastLoginTime'][i] = df['lastLoginTime'][i].days

#查看转换后的数据
print(df)


#把第一列无用的用户ID列删除
df = df.iloc[:,1:]

#查看数据
print(df)


#把输入输出项确定下
y = df.iloc[:,-1]
x = df.iloc[:,:-1]

#查看x和y
print(x)
print(y)

#sklearn把数据集拆分成训练集和测试集
from sklearn.model_selection import train_test_split
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.33, random_state = 42)

#使用sklearn把数据集进行尺度标准化
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()

print(x_train)
print(x_test)
x_train = sc.fit_transform(x_train)
x_test = sc.fit_transform(x_test)


#使用keras包搭建人工神经网络
import keras
#序贯(Sequential)模型包
from keras.models import Sequential
#神经网络层
from keras.layers import Dense
#优化器
from keras.optimizers import SGD
#创建一个空的神经网络模型
classifier = Sequential()
#创建输入层
classifier.add(Dense(units = 3, kernel_initializer = 'uniform', activation = 'relu', input_dim = 6))
#创建输出层
classifier.add(Dense(units = 1, kernel_initializer = 'uniform', activation = 'sigmoid'))
#配置训练模型
classifier.compile(loss='binary_crossentropy',
              optimizer=SGD(),
              metrics=['accuracy'])

#训练模型
history = classifier.fit(x_train, y_train,
                    batch_size=10,
                    epochs=100,
                    validation_data=(x_test, y_test))
相关推荐
李慕婉学姐9 小时前
【开题答辩过程】以《基于社交网络用户兴趣大数据分析》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
数据挖掘·数据分析
Lun3866buzha19 小时前
YOLOv8-SEG-FastNet-BiFPN实现室内物品识别与分类:背包、修正带、立方体和铅笔盒检测指南
yolo·分类·数据挖掘
Faker66363aaa20 小时前
基于YOLOv8-GhostHGNetV2的绝缘子破损状态检测与分类系统实现
yolo·分类·数据挖掘
说私域21 小时前
日本零售精髓赋能下 链动2+1模式驱动新零售本质回归与发展格局研究
人工智能·小程序·数据挖掘·回归·流量运营·零售·私域运营
墨理学AI21 小时前
一文学会一点python数据分析-小白原地进阶(mysql 安装 - mysql - python 数据分析 - 学习阶段梳理)
python·mysql·数据分析
databook1 天前
像搭积木一样思考:数据科学中的“自下而上”之道
python·数据挖掘·数据分析
wang_yb1 天前
像搭积木一样思考:数据科学中的“自下而上”之道
数据分析·databook
啊阿狸不会拉杆1 天前
《机器学习导论》第 9 章-决策树
人工智能·python·算法·决策树·机器学习·数据挖掘·剪枝
玄同7651 天前
机器学习中的三大距离度量:欧式距离、曼哈顿距离、切比雪夫距离详解
人工智能·深度学习·神经网络·目标检测·机器学习·自然语言处理·数据挖掘
Katecat996631 天前
蚊子幼虫与蛹的自动检测与分类-VFNet_R101_FPN_MS-2x_COCO实现详解
人工智能·数据挖掘