返回顶部
首页 > 资讯 > 后端开发 > Python >Python读取csv文件做K-means分析详情
  • 504
分享到

Python读取csv文件做K-means分析详情

2024-04-02 19:04:59 504人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录1.运行环境及数据2.基于时间序列的分析2D2.1 2000行数据结果展示2.2 6950行数据结果展示2.3 300M,约105万行数据结果展示 3.经纬度高程三维坐

1.运行环境及数据

python3.7、PyCharm CommUnity Edition 2021.1.1,win10系统。

使用的库:matplotlib、numpy、sklearn、pandas

数据:CSV文件,包含时间,经纬度,高程等数据

2.基于时间序列的分析2D

读取时间列和高程做一下分析:

代码如下:

from PIL import Image
import matplotlib.pyplot as plt
import numpy as np
from sklearn.cluster import KMeans, MiniBatchKMeans
import pandas as pd
 
if __name__ == "__main__":
    data = pd.read_csv(r"H:\CSDN_Test_Data\UseYourTestData.csv")
    x, y = data['Time (sec)'], data['Height (m HAE)']
    n = len(x)
    x = np.array(x)
    x = x.reshape(n, 1)#reshape 为一列
    y = np.array(y)
    y = y.reshape(n, 1)#reshape 为一列
    data = np.hstack((x, y)) #水平合并为两列
    k = 8  # 设置颜色聚类的类别个数(我们分别设置8,16,32,64,128进行对比)
    cluster = KMeans(n_clusters=k)  # 构造聚类器
    C = cluster.fit_predict(data)
    # C_Image = cluster.fit_predict(data)
    print("训练总耗时为:%s(s)" % (Trainingtime).seconds)
    plt.figure()
    plt.scatter(data[:, 0], data[:, 1], marker='o', s=2, c=C)
    plt.show()

结果展示:

2.1 2000行数据结果展示

2.2 6950行数据结果展示

2.3 300M,约105万行数据结果展示

CPU立马90%以上了。大约1-2分钟,也比较快了。

markersize有些大了, 将markersize改小一些显示,设置为0.1,点太多还是不明显。

 3.经纬度高程三维坐标分类显示3D-空间点聚类

修改代码,读取相应的列修改为X,Y,Z坐标:如下:

from PIL import Image
import matplotlib.pyplot as plt
import numpy as np
from sklearn.cluster import KMeans, MiniBatchKMeans
import pandas as pd
from mpl_toolkits.mplot3d import Axes3D
 
if __name__ == "__main__":
    data = pd.read_csv(r"H:\CSDN_Test_Data\UseYourTestData.csv")
    x, y,z = data['Longitude (deg)'],data['Latitude (deg)'],  data['Height (m HAE)']
    n = len(x)
    x = np.array(x)
    x = x.reshape(n, 1)#reshape 为一列
    y = np.array(y)
    y = y.reshape(n, 1)#reshape 为一列
    z = np.array(z)
    z = z.reshape(n, 1)  # reshape 为一列
    data = np.hstack((x, y, z)) #水平合并为两列
    k = 8  # 设置颜色聚类的类别个数(我们分别设置8,16,32,64,128进行对比)
    cluster = KMeans(n_clusters=k)  # 构造聚类器
    C = cluster.fit_predict(data)
 
    # C_Image = cluster.fit_predict(data)
    print("训练总耗时为:%s(s)" % (Trainingtime).seconds)
    fig = plt.figure()
    ax = Axes3D(fig)
 
    ax.scatter(data[:, 0], data[:, 1],data[:, 2], s=1, c=C)
    # 绘制图例
    ax.legend(loc='best')
    # 添加坐标轴
    ax.set_zlabel('Z Label', fontdict={'size': 15, 'color': 'red'})
    ax.set_ylabel('Y Label', fontdict={'size': 15, 'color': 'red'})
    ax.set_xlabel('X Label', fontdict={'size': 15, 'color': 'red'})
    plt.show()

3.1 2000行数据结果显示

由于经度在纬度方向上在17m范围类,所以立体效果较差,可以换其他数据测试

3.2 300M的CSV数据计算显示效果

105万行数据显示结果:

到此这篇关于python读取csv文件做K-means分析详情的文章就介绍到这了,更多相关Python读取csv文件内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python读取csv文件做K-means分析详情

本文链接: https://lsjlt.com/news/144415.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python读取csv文件做K-means分析详情
    目录1.运行环境及数据2.基于时间序列的分析2D2.1 2000行数据结果展示2.2 6950行数据结果展示2.3 300M,约105万行数据结果展示 3.经纬度高程三维坐...
    99+
    2024-04-02
  • Python取读csv文件做dbscan分析
    目录1.读取csv数据做dbscan分析2.输出结果显示3.计算效率1.读取csv数据做dbscan分析 读取csv文件中相应的列,然后进行转化,处理为本算法需要的格式,然后进行db...
    99+
    2024-04-02
  • Python怎么取读csv文件做dbscan分析
    本篇内容介绍了“Python怎么取读csv文件做dbscan分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.读取csv数据做dbsca...
    99+
    2023-06-30
  • 在python中读取和写入CSV文件详情
    目录前言1.导入CSV库2.对CSV文件进行读写2.1 用列表形式写入CSV文件2.2 用列表形式读取CSV文件2.3 用字典形式写入csv文件2.4 用字典形式读取csv文件结语前...
    99+
    2024-04-02
  • 【Python】Python读取CSV文件
    CSV文件是一种常见的数据存储格式,很多人在日常工作中需要使用Python处理CSV文件。Python提供了多种方法来读取CSV文件,包括使用标准库、第三方库和内置函数。本文将介绍多种Python读取...
    99+
    2023-09-12
    python pandas 数据分析
  • python怎么读取csv文件
    在Python中,可以使用csv模块来读取CSV文件。下面是读取CSV文件的基本步骤: 导入csv模块:import csv 打开...
    99+
    2024-02-29
    python
  • 怎么用Python读取CSV文件
    这篇文章主要介绍了怎么用Python读取CSV文件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。典型的数据集stocks.csv:一个股票的数据集,其实就是常见的表格数据。有...
    99+
    2023-06-25
  • 第一课:Python读取.csv文件
    我的是Python3.6版本的,可能有些和Python2.7很多不一样的地方。 下面用Python打开一个test1.csv文件,可以看到运行的结果在下面。 ...
    99+
    2023-01-31
    一课 文件 Python
  • 用 PHP 读取或解析 CSV 文件
    文件处理是任何 Web 应用程序的重要组成部分。本教程将介绍如何使用文件处理来读取、写入和附加文件。在 PHP 中使用 fread() 读取 CSV 文件是 PHP 读取 CSV 文件的基本功能。它读取文件...
    99+
    2024-02-27
  • Java中csv文件读写分析
    文章目录 一、txt、csv、tsv文件二、csv文件规范三、csv使用场景四、Java中的csv类库1. javacsv2. opencsv写入器读取器解析器注解映射策略MappingStr...
    99+
    2023-09-09
    java opencv
  • python数据分析之文件读取详解
    目录前言:一·Numpy库中操作文件二·Pandas库中操作文件三·补充总结前言: 如果你使用的是Anaconda中的Jupyter,则不需要下载Pands和Numpy库;如果你使用...
    99+
    2024-04-02
  • Python——csv文件的写入与读取
    1.csv文件介绍 CSV文件是一种常见的数据格式,它以逗号分隔不同的字段,每行表示一个数据记录。在Python中,我们可以使用csv模块来读取和写入CSV文件。 2.写入CSV文件 在Python中,我们可以使用csv模块的writer对...
    99+
    2023-09-04
    python 开发语言
  • 利用python实现聚类分析K-means算法的详细过程
    K-means算法介绍   K-means算法是很典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。该算法认为簇是由距离靠近...
    99+
    2024-04-02
  • Python中Pandas怎么读取文件和读取CSV参数
    本篇内容主要讲解“Python中Pandas怎么读取文件和读取CSV参数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中Pandas怎么读取文件和读取CSV参数”吧!一、Pandas...
    99+
    2023-07-06
  • python怎么读取csv文件指定行
    要读取 CSV 文件的指定行,可以使用 Python 的 csv 模块结合文件读写操作。下面是一个示例代码:```pythonimp...
    99+
    2023-09-15
    python
  • Python读取CSV文件的几种方法
    话不多说,开干!!! 目录 1. 使用 csv 模块 2.使用 numpy 库 3.使用pandas库 4.使用标准库中的 csv 模块 5.注意事项 1. 使用 csv 模块 (1)项目目录如下图所示: (2)代码如下: impor...
    99+
    2023-08-31
    python 开发语言 pandas numpy
  • python怎么读取csv文件的数据
    有两种方法可以使用 python 读取 csv 文件:使用 csv 模块: a. 导入 csv 模块 b. 打开 csv 文件 c. 创建 csv 阅读器 d. 遍历每一行使用 pand...
    99+
    2024-04-02
  • Python 文本文件与csv文件的读取与写入
    目录一、文本文件读取与写入1 读取文件的 read() 方法2 读取文件的 readline() 方法3 读取文件的 readlines() 方法4 写入文件的 write() 方法...
    99+
    2024-04-02
  • 详解Python读取和写入操作CSV文件的方法
    目录什么是 CSV 文件?内置 CSV 库解析 CSV 文件读取 CSV 文件csv将 CSV 文件读入字典csv可选的 Python CSV reader参数使用 csv 写入文件...
    99+
    2024-04-02
  • python使用pandas读取csv文件的方法
    目录pandas读取csv文件的操作1. 读取csv文件在这里记录一下,python使用pandas读取文件的方法用到pandas库的read_csv函数 # -*- coding:...
    99+
    2022-12-23
    python 读取csv文件 pandas读取csv文件
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作