python - 加载和解释多个 csv 文件作为机器学习数据集的单独项目
问题描述
项目描述
为了很好地说明一个问题,我将简要描述我正在处理的项目,对于问题描述,请看低一点。
我正在创建道路质量测试系统,基本上它的工作原理是您驾驶汽车,将手机放在手机支架或其他稳定的地方,安装应用程序,从加速度计传感器和 GPS(以及其他一些时间等不太重要),然后将数据发送到服务器,在该服务器上在地图上进行解释和可视化。
现在,我正在收集的数据看起来像这样(您不需要确切知道数字是什么,重要的是颜色模式),彩色列是力向量的长度,首先是原始的,然后另外两个是在应用了一些数学函数之后:
正如您在一些数据过滤后可以注意到的那样,我可以得到提到的模式,即最后一个彩色列中的那些红色字段。提供的只是一些路上的赔率。
另一个例子,这次只有彩色柱子,是道路上的洞:
我现在能认出的最后一个道路障碍是道路颠簸,它看起来像定期间隔的 4 个洞。
问题描述
我发现我可以创建机器学习模型,该模型将能够识别是否发生道路损坏和/或识别此障碍物的类型。我正在为自己收集数据,所以我开始准备数据集。我假设 ML 模型只需要我的因素(彩色的)和行驶速度(可能是时间)。
我在障碍物上方和下方获取 200 行数据,以便从中获取 200 个 csv 文件,以说明我如何收集这些文件:
文件夹结构:
csv 内容示例:
0.2745889796080920;27.658
0.1789459363942790;27.658
0.1789459363942790;27.658
0.5064691706612310;27.658
13.6741337473481000;27.658
0.0008198475472302;27.658
0.6966460666299380;27.658
1.7608043004079600;27.658
17.1857193812806000;27.658
0.0033345195462651;27.658
1.0955065298328300;27.658
23.1644179090102000;27.658
9.3623249392203400;27.658
0.0400827515217403;27.658
0.2744935355442740;27.658
1.4151560667347700;27.658
0.0211310325855840;27.658
0.0529549443495651;27.658
1.0637415545460900;27.262
0.9158744998054270;27.262
65.2394434473637000;27.262
0.9373089761616180;27.262
4.4455242861703800;27.262
4.4455242861703800;27.262
0.0153213854311974;27.262
0.1598523159957960;27.262
2.9905854651232400;27.262
0.0013359036789980;27.262
1.5977170994976800;27.262
0.3556375168313520;27.262
0.0478571184444607;27.262
0.2921162160902950;27.262
0.0045640507972654;27.262
为以下三个类别之一创建 CSV 文件:Hole、Odds、Bumps。我可以通过文件名或将它们放置在其他目录中或使用所有 csv 名称和每个标签创建其他 csv 来标记它们。我希望在给模型 200 行数据后,它可以确定是否有任何障碍或定义其类型。
我想使用 Tensorflow 和 Python 创建 ML 模型,以前从未这样做过。现在我在 Google Collab 工作(如果有什么不同的话)我已经搜索过,但找不到答案,我发现只导入带有值和标签的 csv 文件。
我确实有基本的 python 代码,但它什么也没做。这是我的方法:
import pandas as pd
import numpy as np
# Make numpy values easier to read.
np.set_printoptions(precision=3, suppress=True)
import tensorflow as tf
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
roads_zip = tf.keras.utils.get_file(
'dataset.zip', "#Google-drive-link",
extract=True)
import pathlib
font_csvs = sorted(str(p) for p in pathlib.Path('dataset/dataset/hole').glob("*.csv"))
font_csvs[:10]
class DataInfo:
bump = sorted(str(p) for p in pathlib.Path('dataset/dataset/bump').glob("*.csv"))
hole = sorted(str(p) for p in pathlib.Path('dataset/dataset/hole').glob("*.csv"))
odds = sorted(str(p) for p in pathlib.Path('dataset/dataset/odds').glob("*.csv"))
data = DataInfo()
print(data.hole)
所以问题是
如何从所有这些文件创建数据集以及如何导入它们并使 ML 正确解释它们?我的方法是否正确?
解决方案
推荐阅读
- javascript - 单击侧边按钮时显示不同的图表
- html - 为什么在 css 代码中更改时我的按钮上的字体没有改变?
- ios - vsCode 不在物理 iPhone 上运行颤振应用程序
- php - PHP:如何分解字符串
- c# - 如何使用我的 GameObject.activeSelf 属性出现和消失带有 Text 的容器 GameObject?
- excel - 刮产品规格值
- unix - awk:打印多个文件,将每个文件放入一个新文件夹。从输入文件中提取的文件夹名称
- julia - 为什么 Julia 中的微分方程给我这个 ODE 系统的“无匹配方法”错误?
- spring - Spring-Boot:在组件之间共享一个对象
- reactjs - 在 React with React Hooks 上使用动态导入视频