当前位置: 首页 > news >正文

做二手网站有哪些微服务网站

做二手网站有哪些,微服务网站,品牌推广工作职责,百度入口Python开发之二维数组空缺值的填充 1 实现一,任意位置填充2 实现二,填充内部3 实现三,只填充边缘,不包括四个角 前言:主要实现二维数据里面某一个数据的缺失,用缺失的近邻数据进行均值填充,可以…

Python开发之二维数组空缺值的填充

  • 1 实现一,任意位置填充
  • 2 实现二,填充内部
  • 3 实现三,只填充边缘,不包括四个角

前言:主要实现二维数据里面某一个数据的缺失,用缺失的近邻数据进行均值填充,可以应用在遥感图像中空缺值的填充等。


1 实现一,任意位置填充

对二维数据任意位置的空缺值进行近邻填充。
代码实现,其中指定空缺值,指定近邻的数量

import numpy as np# 定义一个函数来填充-23750为空值
def fill_empty_with_mean(arr, empty_value,min_neighbors):# 获取数组的行数和列数rows, cols = arr.shape# 遍历数组for i in range(rows):for j in range(cols):if arr[i, j] == empty_value:# 获取周围非空元素的均值neighbors = []for x in [-1, 0, 1]:for y in [-1, 0, 1]:if 0 <= i + x < rows and 0 <= j + y < cols and arr[i + x, j + y] != empty_value:neighbors.append(arr[i + x, j + y])# 计算均值并填充if len(neighbors) >=min_neighbors:# print(neighbors)# print(np.mean(neighbors))arr[i, j] = np.mean(neighbors)if __name__ == '__main__':# 创建一个包含-23750为空值的示例二维数组array = np.array([[1, -23750, 1, 1, 1],[1, -23750, 1, 1, -23750],[-23750, 2, 9, -1, 1.0],[-1, -1, -23750, 5,  -23750]])# 使用函数填充-23750为空值empty_value = -23750min_neighbors = 3fill_empty_with_mean(array, empty_value,min_neighbors)# 输出填充后的数组print(array)

在这里插入图片描述

2 实现二,填充内部

对二维数据任意位置的空缺值进行近邻填充(去掉边缘)。
代码实现,其中指定空缺值,指定近邻的数量

import numpy as npdef fill_empty_with_mean(arr, empty_value, min_neighbors=5):# 获取数组的行数和列数rows, cols = arr.shape# 遍历数组for i in range(1, rows - 1):  # 从第2行到倒数第2行for j in range(1, cols - 1):  # 从第2列到倒数第2列if arr[i, j] == empty_value:# 获取周围非空元素的个数neighbors = [arr[i + x, j + y] for x in [-1, 0, 1] for y in [-1, 0, 1] ifarr[i + x, j + y] != empty_value]# 如果周围非空元素的个数大于等于min_neighbors,计算均值并填充if len(neighbors) >= min_neighbors:arr[i, j] = np.mean(neighbors)return arrif __name__ == '__main__':# 创建一个包含-23750为空值的示例二维数组array = np.array([[1, -23750, 1, 1, 1],[1, -23750, 1, 1, -23750],[-23750, 1, 7, -1, 1],[-1, -1, -23750, 5, 6]])# 输出填充后的数组# print(array)# 使用函数填充-23750为空值,只有周围至少有5个非空值时才填充empty_value = -23750min_neighbors = 5arr = fill_empty_with_mean(array, empty_value, min_neighbors)# 输出填充后的数组print(arr)

在这里插入图片描述

3 实现三,只填充边缘,不包括四个角

代码实现

import numpy as npdef fill_edge_empty_with_mean(arr, empty_value, min_neighbors=5):# 获取数组的行数和列数rows, cols = arr.shape# 遍历第一行for j in range(1, cols - 1):if arr[0, j] == empty_value:# 获取周围非空元素的个数neighbors = [arr[0 + x, j + y] for x in [0, 1] for y in [-1, 0, 1] if arr[0 + x, j + y] != empty_value]print(neighbors)# 如果周围非空元素的个数大于等于min_neighbors,计算均值并填充if len(neighbors) >= min_neighbors:arr[0, j] = np.mean(neighbors)print(float(np.mean(neighbors)))## 遍历最后一行for j in range(1, cols - 1):if arr[rows - 1, j] == empty_value:# 获取周围非空元素的个数neighbors = [arr[rows - 1 + x, j + y] for x in [-1, 0] for y in [-1, 0, 1] if arr[rows - 1 + x, j + y] != empty_value]print(neighbors)# 如果周围非空元素的个数大于等于min_neighbors,计算均值并填充if len(neighbors) >= min_neighbors:arr[rows - 1, j] = np.mean(neighbors)print(float(np.mean(neighbors)))## 遍历第一列for i in range(1, rows - 1):if arr[i, 0] == empty_value :neighbors = [arr[i + x, 0 + y] for x in [-1, 0, 1] for y in [0, 1] if arr[i + x, 0 + y] != empty_value]print(neighbors)# 如果周围非空元素的个数大于等于min_neighbors,计算均值并填充if len(neighbors) >= min_neighbors:arr[i, 0] = np.mean(neighbors)print(float(np.mean(neighbors)))# 遍历最后一列for i in range(1, rows - 1):if arr[i, cols - 1] == empty_value:# 获取周围非空元素的个数neighbors = [arr[i + x, cols-1 + y] for x in [-1, 0, 1] for y in [-1, 0] if arr[i + x, cols-1 + y] != empty_value]print(neighbors)# 如果周围非空元素的个数大于等于min_neighbors,计算均值并填充if len(neighbors) >= min_neighbors:arr[i, cols - 1] = np.mean(neighbors)print(float(np.mean(neighbors)))return arrif __name__ == '__main__':# 创建一个包含-23750为空值的示例二维数组array = np.array([[1, -23750, 1, 1, 1],[1, -1, 1, 1, -23750],[-23750, 1, 7, -1, 1],[-1, -1, -23750, 5, 6.0]])# 输出填充后的数组# print(array)# 使用函数填充-23750为空值,只有周围至少有5个非空值时才填充empty_value = -23750min_neighbors = 3arr = fill_edge_empty_with_mean(array, empty_value, min_neighbors)# 输出填充后的数组print(arr)

在这里插入图片描述

http://www.yayakq.cn/news/33896/

相关文章:

  • 做的比较好的时尚网站广州优质网站建设案例
  • 网站建设简洁django做网站好吗
  • 部队网站建设报告成都定制网站建设地址
  • 销售型企业网站网站建设话语
  • 漯河市城市建设投资公司网站网站上传权限问题
  • 网站设计制作报告京润珍珠企业网站优化
  • 网站建设免费建站源代码青海网站设计企业
  • 用什么开发和建设网站最好wordpress修改文章链接
  • 学校网站建设栏目有哪些深圳品牌策划设计方案
  • 祁县网站建设做网站一月工资
  • 龙岩网站制作教程广东科技网站建设
  • 养殖场网站源码滕州做网站哪家好
  • 网站建设php怎么安装wordpress posts
  • 帝国做网站的步骤做网站服务器硬盘多大
  • 营销型网站建设优化建站asp手机网站自动跳转
  • 网站建设的分工扬州电商网站建设
  • 网站建设费用多少钱郑州工程设计公司官网
  • 成都公司网站设计套餐爱网是什么网站
  • 网摘网站推广法注册博客域名做视频网站会怎么样
  • 鞍山网站开发什么是网络营销评价
  • 凉山州规划和建设局网站wordpress 点击加载
  • 网站个人中心页面设计动画设计怎么自学
  • 商派商城网站建设公司网站建设年终总结
  • 网站建设的实训心得 500字什么都不懂能去干运维吗
  • 东莞企业网站建设方案运营的网站
  • 网站被k怎么办权威发布海报
  • 河北廊坊百度建站ftp怎么设置网站首页
  • php网站开发试卷建设工程类招标信息发布网站
  • 个人怎么做网站深圳百度推广公司
  • 网站开发前端需要学什么网络运营管理