数据分析 任务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))
相关推荐
cver1239 小时前
足球视频检测数据集介绍-160张图片-智能体育转播 运动数据分析 自动化视频剪辑 裁判辅助系统 青训技术分析 虚拟现实体验
数据分析·自动化·音视频
2301_7921858811 小时前
基于软件工程的结构化分析实验
人工智能·数据挖掘·软件工程
一瞬祈望12 小时前
ResNet50 图像分类完整实战(Notebook Demo + 训练代码)
人工智能·python·神经网络·数据挖掘
顽强卖力15 小时前
第一章:什么是数据分析?
数据挖掘·数据分析
QZ1665609515915 小时前
政务数据智能治理一体化解决方案:合规对标、易掌握、自适应分类的全面实现
分类·数据挖掘·政务
奥利文儿16 小时前
【虚拟机】win11+VMware+ubuntu24 网络配置篇
网络·数据挖掘·数据分析
程序员老赵16 小时前
Nextcloud Docker 容器化部署指南
docker·数据分析·数据可视化
Aloudata19 小时前
根据业务角色创建 AI 数据分析助手,满足集团型企业多部门个性化需求
人工智能·数据挖掘·数据分析·chatbi·data agent
qq_27049009619 小时前
基于大数据的民宿数据分析及可视化平台的设计与实现
大数据·数据挖掘·数据分析
Amber_3719 小时前
数据分析之(MySQL+普通程序) VS (Python的NumPy/Pandas)
python·mysql·数据分析·numpy·pandas