澳洲房产市场数据清洗、聚类与可视化综合分析

news2024/11/27 19:54:10

本项目涉及数据清洗及分析时候的思路,如果仅在CSDN中看,可能会显得有些乱,建议去本人和鲸社区对应的项目中去查看,源代码和数据集都是免费下载的。

声明:本项目的成果可无偿分享,用于学习交流。但请勿用于商业用途或倒卖。一经发现情节严重者,将依法追究相关责任。

1.项目背景

悉尼作为澳大利亚最大的城市之一,其房地产市场一直是国内外投资者和居民关注的焦点,近年来,随着人口增长、城市化进程加速,以及经济环境的变化,悉尼及其周边地区的房产需求和价格波动频繁。为了更好地理解这一市场的现状与趋势,本项目针对悉尼房地产市场进行了全面的数据分析,旨在通过科学的手段挖掘市场特征,为房地产投资决策和政策制定提供数据支持。

2.数据说明

字段说明
rea_property_id数据集中房产的唯一标识符
property_type房产的类型或类别
state房产所在澳大利亚的州
postcode房产的邮政编码
year_built房产建成的年份
last_sold_date销售历史中房产上次出售的日期
last_sold_agency销售历史中涉及房产上次出售的代理机构
bedrooms房产中的卧室数量
bathrooms房产中的浴室数量
findAgentsURI用于查找与房产相关代理的统一资源标识符(URI)
floor_area房产的总楼面面积
fullSuburb房产所在郊区的全名
house_type房屋类型
lat房产地理位置的纬度
lon房产地理位置的经度
photo_count与房产关联的照片数量
images_urls指向房产图片的 URL 列表
street_address房产的完整地址
suburb房产所在的郊区名称
url指向房产列表的网址
land_size综合土地尺寸信息(数值+单位)
sales_history房产的历史销售信息
land_size_num表示房产土地尺寸的数值
land_size_unit土地尺寸的测量单位(例如,平方米)
floor_area_num表示房产楼面面积的数值
avm_estimate_lastUpdated自动估价模型(AVM)估计最后更新的日期
estimated_price房产的估计价格
estimated_price_confidence与估计价格相关的置信水平
estimated_value房产的估计价值
estimated_value_high估计的房价最高值
estimated_value_low估计的房价最低值
offMarket指示房产是否目前不在市场上
parking与房屋关联的停车位
listing_type列表类型(出租/出售)
availability房产的可用性状态
rent_price租金价格
rent_currency租金价格的货币单位
rent_bond租金押金
sold_date出售日期
property_history_link房产历史链接

3.Python库导入及数据读取

import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
import re
from sklearn.impute import KNNImputer
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
from sklearn.metrics import silhouette_score
from sklearn.decomposition import PCA
# 设置显示选项
pd.set_option('display.max_columns', None)  # 显示所有列
pd.set_option('display.max_rows', None)     # 显示所有行
data = pd.read_csv("/home/mw/input/11213446/Australia real estate properties.csv")

4.数据预览及数据清洗

print('查看数据信息:')
data.info()
查看数据信息:
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1000 entries, 0 to 999
Data columns (total 42 columns):
 #   Column                      Non-Null Count  Dtype  
---  ------                      --------------  -----  
 0   rea_property_id             1000 non-null   int64  
 1   property_type               1000 non-null   object 
 2   state                       1000 non-null   object 
 3   postcode                    1000 non-null   int64  
 4   year_built                  153 non-null    float64
 5   last_sold_date              990 non-null    object 
 6   last_sold_agency            935 non-null    object 
 7   bedrooms                    1000 non-null   int64  
 8   bathrooms                   1000 non-null   int64  
 9   findAgentsURI               992 non-null    object 
 10  floor_area                  1000 non-null   object 
 11  fullSuburb                  1000 non-null   object 
 12  house_type                  1000 non-null   object 
 13  lat                         1000 non-null   float64
 14  lon                         1000 non-null   float64
 15  photo_count                 997 non-null    float64
 16  images_urls                 1000 non-null   object 
 17  street_address              1000 non-null   object 
 18  suburb                      1000 non-null   object 
 19  url                         1000 non-null   object 
 20  land_size                   1000 non-null   object 
 21  sales_history               1000 non-null   object 
 22  land_size_num               1000 non-null   int64  
 23  land_size_unit              1000 non-null   object 
 24  floor_area_num              345 non-null    float64
 25  avm_estimate_lastUpdated    988 non-null    object 
 26  estimated_price             10 non-null     object 
 27  estimated_price_confidence  10 non-null     object 
 28  estimated_value             1000 non-null   object 
 29  estimated_value_high        10 non-null     object 
 30  estimated_value_low         10 non-null     object 
 31  offMarket                   1000 non-null   bool   
 32  parking                     959 non-null    float64
 33  listing_type                0 non-null      float64
 34  availability                0 non-null      float64
 35  rent_price                  0 non-null      float64
 36  rent_bond                   0 non-null      float64
 37  rent_currency               0 non-null      float64
 38  sold_date                   0 non-null      float64
 39  property_history_link       0 non-null      float64
 40  description                 0 non-null      float64
 41  agents                      0 non-null      float64
dtypes: bool(1), float64(15), int64(5), object(21)
memory usage: 321.4+ KB

数据集包含 1000 条记录 和 42 个字段,值得注意的是,存在多个缺失特征,如房产的估计价格、与估计价格相关的置信水平等,这些特征不足以进行全面分析,只能删除;还注意到本应该是数值型的特征,如estimated_value,却是字符型,这些都说明,这个数据可能会很难分析。

通过输出前五行数据,发现一些特征也需要处理,总结下来就是:

  • last_sold_date 转为标准日期格式,去掉时间戳和引号。
  • 清理 floor_area,将 “Unavailable” 转为缺失值,并与 floor_area_num 统一处理。
  • 检查 house_typeproperty_type,如果重复则保留 property_type,删除 house_type
  • 删除 photo_count,字段对后续分析无用。
  • 删除 street_address,地理分析已经由 state, postcode, lat, lon 覆盖。
  • 删除 fullSuburb,与 suburb 重复,仅保留 suburb
  • 删除 land_size,与 land_size_num 重复,仅保留数值型 land_size_num
  • 删除 sales_history,嵌套 JSON 数据内容已提取。
  • 检查 land_size_unit,如果所有单位均为平方米,删除此字段。
  • 删除 avm_estimate_lastUpdated,字段与缺失的估价字段相关,无实际分析价值。
  • 保留 estimated_price 系列字段(estimated_value, estimated_value_high, estimated_value_low 等),后续分析后决定保留或删除。
  • offMarket 转为数值型(0 和 1)。

land_size_unit中唯一值情况:[’ m²’ ‘2 m²’ ‘1 m²’],单位应该就是m²了,'2 m²''1 m²' 应该是错误的单位,所以直接删除land_size_unit。

通过equals检查发现 house_type 和 property_type 完全重复,故直接删除 house_type列。
equals 是 Pandas 提供的一种方法,用于逐元素比较两个 Series 或两个 DataFrame 是否完全相同。它特别适合用来检查两个列的数据是否一致。

同样的,将 floor_area 列中Unavailable转为缺失值后, floor_area 和 floor_area_num 完全重复,故直接删除 floor_area 列。

  • 房屋有两种类型,Unit 和 House。
  • state只有一个唯一值,对分析没用,故直接删除。
  • last_sold_agency唯一值数量较多,难以提取有意义的信息,故删除。
  • suburb也是唯一值太多了,后续建模分析的时候也是要删除的,但是目前可以保留,万一处理那些缺失值能起作用。
  • estimated_value 中undefined - undefined视为缺失值,而且怀疑它其他的值,和estimated_value_high、estimated_value_low是一致的。

头疼,这些数据缺失值是真的多,在 estimated_price 中仅10条非缺失值中,year_built 不是缺失值就是 0,然后注意到,estimated_price 中 存在 [object Object] ,但是还是有好消息的,那就是 estimated_value 和 estimated_price_confidence 都是存在的,这就好办了,当为 medium 时,取对应的 estimated_value 中位数,当为 high 时,取最大值,做完这些操作后,删除 estimated_price_confidence 、estimated_value 、estimated_value_high 、 estimated_value_low 。

可以看到,已经正确的填充 estimated_value_high 和 estimated_value_low,接下来只要处理 estimated_price 即可。

终于填充完毕了,现在把这个填充后的数据填进原始data中,并且删除其他的特征。

终于弄完了,现在要开始处理缺失值了,像year_built把0也弄成缺失值后看一下,当然也检查一下其他数值型特征是否也存在用数值来代替缺失值的情况,

Image Name
我都开始准备填充了,一看到出现负值,人都傻了,所以我又要从这里开始,增加检查数值型特征,就是为了避免这种情况。

列 floor_area_num 存在负值:1 条,将列 floor_area_num 中的负值设置为缺失值。

不存在某行缺失值特别多的情况,但是还是直接删除year_built和last_sold_date中缺失的10行数据,然后把last_sold_date转为日期形式。

现在还剩floor_area_num、parking、estimated_price的缺失值没处理了,借助postcode、suburb来看看能不能处理,parking的话,就看看能不能用0填充,最麻烦的就是estimated_price了,删除也不是,不删除也不是,暂时先不处理,等后续分析了看,能不能挖掘一些有用的信息再去处理它。

44.51%的缺失值在房产的类型、房产的邮政编码、房产所在郊区都保持一致,针对这一部分数据,采用直接用分组后的中位数来填充。

  • 平均值略有下降,可能因为填充的中位数较整体平均值小。
  • 标准差稍微下降,表明填补后数据分布更均匀。
  • 但是总体而言,中位数填充后的统计数据非常接近填充前,说明填补方式有效,未引入明显偏差,

填补后的缺失值比例: 36.77%,剩下的缺失值,就考虑用KNN方法来填充了。

  • 标准差从 211.87 降到 169.25,说明数据分布更加集中。
  • 四分位数有明显上升,但最值没变,未影响数据的极值范围。
  • 均值接近原始数据分布,总的看来,是能够接受这个填充结果的。

最小值是1,因此更能确定用0去填充parking列的缺失值。

这些数值有些夸张了,土地面积40万平方米,按土地面积降序输出看一下是怎么回事。

可以认定这些是异常值了,因此,使用IQR来处理异常值,将异常值替换为上下界值,避免对数据分布产生较大影响,但是要注意,有些特征是整数型的,处理的时候,需要考虑取整的情况,不然会这样:

Image Name
明明卧室数量、浴室数量和停车位数量应该是整数,可是这里处理为上下界后却变成了小数,所以处理的时候需要注意。

到这里,基本上就处理完毕了,总所周知,房价和房屋面积是呈相关的,所以,这里可以借助SMOTER + 模型预测的方式,去填充房价的缺失值,并且提供预测的置信区间,当然这一步仅仅是一个假设性处理,如果填充效果不理想的话,还是会选择删除estimated_price特征。

运行该段代码,会报一个警告:

smote = SMOTE()  
x_resampled, y_resampled = smote.sample(x_train, y_train)  

警告内容:

2024-11-26 03:37:40,265:INFO:SMOTE: Running sampling via ('SMOTE', "{'proportion': 1.0, 'n_neighbors': 5, 'nn_params': {}, 'n_jobs': 1, 'ss_params': {'n_dim': 2, 'simplex_sampling': 'random', 'within_simplex_sampling': 'random', 'gaussian_component': {}}, 'random_state': None, 'class_name': 'SMOTE'}")  
2024-11-26 03:37:40,266:INFO:SMOTE: Too few minority samples for sampling  

这个警告的意思是样本量太少,无法生成有效的合成数据,这个思路不行,那就直接先进行斯皮尔曼相关性分析,然后选择相关性强的数据构建贝叶斯模型。

correlation = data[['bedrooms', 'bathrooms', 'land_size_num', 'floor_area_num', 'parking', 'estimated_price']].corr(method='spearman')  
print("与estimated_price相关性矩阵:")  
print(correlation['estimated_price'])  
与estimated_price相关性矩阵:  
bedrooms           0.068784  
bathrooms          0.539360  
land_size_num     -0.141677  
floor_area_num     0.090909  
parking            0.246755  
estimated_price    1.000000  
Name: estimated_price, dtype: float64  

选择bathrooms和parking作为特征去预测estimated_price,看看效果咋样。

# 提取特征和目标  
features = ['bathrooms', 'parking']  
target = 'estimated_price'  
# 筛选非缺失值样本  
data_train = data[data[target].notna()]  
data_predict = data[data[target].isna()]  
x_train = data_train[features].fillna(0)  
y_train = data_train[target]  
x_predict = data_predict[features].fillna(0)  
# 建立贝叶斯回归模型  
bayes_model = BayesianRidge()  
bayes_model.fit(x_train, y_train)  
# 预测缺失值及置信区间  
predicted_values = bayes_model.predict(x_predict)  
data.loc[data[target].isna(), target] = predicted_values  

结果预测的效果很差:
Image Name
毕竟只有10条样本,而且价格差距也比较大,很难填充完整,最终,耗时如此之久的一个特征,还是只能选择删除。

5.描述性分析

  • 房产类型 (property_type):两种类型,以 Unit 为主(占 79.5%)。
  • 邮政编码 (postcode):范围 2000-2870,集中在新南威尔士州 (NSW)。
  • 上次出售时间 (last_sold_date):时间分布广泛,从 1992 年到 2023 年,集中于 2019 年到 2022 年。
  • 卧室数 (bedrooms):大多数房产有 2-3 间卧室,最大为 4 间,平均为 2.38。
  • 浴室数 (bathrooms):平均为 1.49 间,主要集中在 1-2 间,最大为 4 间。
  • 土地面积 (land_size_num):范围 0-455㎡,中位数为 135㎡,显示中小型房产为主。
  • 楼面面积 (floor_area_num):均值为 128.76㎡,四分位范围 90㎡-155.8㎡。
  • 停车位 (parking):平均为 1.3 个,75% 的房产至少有 1 个停车位,最大为 4 个。

数据反映了悉尼及其周边区域的房地产市场特点,房产类型以公寓(Unit)为主,较小面积和较少卧室房产占据主要市场,最近几年交易活跃度显著上升。

6.聚类分析

6.1数据预处理

选择’land_size_num’, ‘bedrooms’, ‘bathrooms’, ‘floor_area_num’, ‘lat’, 'lon’这些特征进行聚类,首先先进行标准化处理。

6.2确定聚类数

这里的话,我不确定究竟是选择3类还是6类、7类,如果选择6类、7类的话,虽然下降明显平稳,但是聚类数可能会过多,可能会导致过拟合现象,即某些类只是由于算法强行分割导致的,而不是实际存在的有意义分组。这里的话,我就选择都绘制一下,然后用pca降维展示哪一类更好
这是分成3类:

Image Name
可以看到,已经很不错了,界限分明,试试第6类:

Image Name
第六类中间那里界限很模糊了,因此还是选择3类,虽然3类的轮廓系数不是特别高,但是聚类出来的效果还可以。

6.3K-Means聚类

根据百度百科,查到悉尼的城市中心坐标为南纬33°51’、东经151°12′,这里可以结合Haversine公式,用于计算地球表面两点之间的最短距离(大圆距离),可以通过经纬度计算两地间的球面距离,这里用它来计算3类经纬度距离悉尼城市中心的距离。

d = 2 R ⋅ arcsin ⁡ ( sin ⁡ 2 ( Δ ϕ 2 ) + cos ⁡ ( ϕ 1 ) ⋅ cos ⁡ ( ϕ 2 ) ⋅ sin ⁡ 2 ( Δ λ 2 ) ) d = 2R \cdot \arcsin\left(\sqrt{\sin^2\left(\frac{\Delta \phi}{2}\right) + \cos(\phi_1) \cdot \cos(\phi_2) \cdot \sin^2\left(\frac{\Delta \lambda}{2}\right)}\right) d=2Rarcsin(sin2(2Δϕ)+cos(ϕ1)cos(ϕ2)sin2(2Δλ) )
其中:

  • d d d 是两点之间的球面距离(沿着地球表面测量)。
  • R R R 是地球的平均半径(通常取 6371公里)。
  • ϕ 1 , ϕ 2 \phi_1, \phi_2 ϕ1,ϕ2 是两点的纬度,以弧度表示。
  • λ 1 , λ 2 \lambda_1, \lambda_2 λ1,λ2 是两点的经度,以弧度表示。
  • Δ ϕ = ϕ 2 − ϕ 1 \Delta \phi = \phi_2 - \phi_1 Δϕ=ϕ2ϕ1 是两点纬度差。
  • Δ λ = λ 2 − λ 1 \Delta \lambda = \lambda_2 - \lambda_1 Δλ=λ2λ1 是两点经度差。

  1. 聚类 0
    • 土地面积:311.96(最高),代表该类房产多为大面积地块。
    • 卧室数量:2.88(接近3卧室),房产以中型住宅为主。
    • 浴室数量:1.48(接近1-2间),浴室数量较为普通。
    • 楼面面积:139.56(中等),显示这些房产的实际使用面积较宽敞。
    • 距离市中心:509.01 公里(远郊),表明这些房产主要分布在远离悉尼市区的区域。
  2. 聚类 1
    • 土地面积:119.20(最低),多为小型地块。
    • 卧室数量:1.89(最低),多为1-2卧室的小型住宅。
    • 浴室数量:1.28(最低),多为单间或1-2间浴室的小型住宅。
    • 楼面面积:108.63(最小),显示该类房产更倾向于小型公寓或经济型住宅。
    • 距离市中心:38.13 公里(最近),显示这些房产多分布在接近悉尼市区的区域。
  3. 聚类 2
    • 土地面积:304.46(接近聚类 0),代表房产以大面积地块为主。
    • 卧室数量:3.20(最高),多为3卧室以上的住宅。
    • 浴室数量:1.88(中等偏高),显示住宅通常有2间左右浴室。
    • 楼面面积:163.76(最高),表明房产为宽敞的大型住宅。
    • 距离市中心:54.20 公里(中间范围),可能分布于郊区或近郊区域。

7.结论

基于对1000条房产数据的全面分析,本项目得出了以下主要结论:

  1. 数据清理:原始数据存在较严重的缺失和异常情况。经过严格的数据清洗,最终保留了990条完整样本和13个字段,确保后续分析的可靠性。

  2. 描述性分析:清洗后的数据反映了悉尼及其周边地区的房地产市场特点。市场以公寓(Unit)为主导,房产面积较小、卧室数量较少的房型占主流。此外,近年来房地产交易的活跃度显著提升,表现出市场热度上升的趋势。

  3. 聚类分析:通过K-Means聚类方法,将房产数据划分为以下三类:

    • 聚类 0:以远郊地区的大型地块房产为主,空间较大但位置相对偏远。
    • 聚类 1:多集中于市区或其附近的小型住宅,适合对地理位置要求较高的买家。
    • 聚类 2:主要代表位于郊区的大型住宅,空间宽敞,适合家庭型需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2248603.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

IT服务团队建设与管理

在 IT 服务团队中&#xff0c;需要明确各种角色。例如系统管理员负责服务器和网络设备的维护与管理&#xff1b;软件工程师专注于软件的开发、测试和维护&#xff1b;运维工程师则保障系统的稳定运行&#xff0c;包括监控、故障排除等。通过清晰地定义每个角色的职责&#xff0…

go-zero(八) 中间件的使用

go-zero 中间件 一、中间件介绍 中间件&#xff08;Middleware&#xff09;是一个在请求和响应处理之间插入的程序或者函数&#xff0c;它可以用来处理、修改或者监控 HTTP 请求和响应的各个方面。 1.中间件的核心概念 请求拦截&#xff1a;中间件能够在请求到达目标处理器之…

Qt Graphics View 绘图架构

Qt Graphics View 绘图架构 "QWGraphicsView.h" 头文件代码如下&#xff1a; #pragma once#include <QGraphicsView>class QWGraphicsView : public QGraphicsView {Q_OBJECTpublic:QWGraphicsView(QWidget *parent);~QWGraphicsView();protected:void mouseM…

【eNSP】动态路由协议RIP和OSPF

动态路由RIP&#xff08;Routing Information Protocol&#xff0c;路由信息协议&#xff09;和OSPF&#xff08;Open Shortest Path First&#xff0c;开放式最短路径优先&#xff09;是两种常见的动态路由协议&#xff0c;它们各自具有不同的特点和使用场景。本篇会对这两种协…

差分 + 模拟,CF 815A - Karen and Game

目录 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 815A - Karen and Game 二、解题报告 1、思路分析 一个经典的差分数组的…

vue3【实战】响应式的登录界面

效果预览 WEB 端效果 移动端效果 技术方案 vue3 vite Element Plus VueRouter UnoCSS TS vueUse AutoImport 技术要点 响应式设计 移动端&#xff1a;图片切换为绝对定位&#xff0c;下移一层&#xff0c;成为背景图片 <el-imageclass"w-screen h-screen lt-md…

加速科技精彩亮相中国国际半导体博览会IC China 2024

11月18日—20日&#xff0c;第二十一届中国国际半导体博览会&#xff08;IC China 2024&#xff09;在北京国家会议中心顺利举办&#xff0c;加速科技携重磅产品及全系测试解决方案精彩亮相&#xff0c;加速科技创始人兼董事长邬刚受邀在先进封装创新发展论坛与半导体产业前沿与…

php反序列化1_常见php序列化的CTF考题

声明&#xff1a; 以下多内容来自暗月师傅我是通过他的教程来学习记录的&#xff0c;如有侵权联系删除。 一道反序列化的CTF题分享_ctf反序列化题目_Mr.95的博客-CSDN博客 一些其他大佬的wp参考&#xff1a;php_反序列化_1 | dayu’s blog (killdayu.com) 序列化一个对象将…

RustDesk 搭建

RustDesk 服务端下载&#xff1a;https://github.com/rustdesk/rustdesk-server/releases RustDesk 客户端下载&#xff1a;https://github.com/rustdesk/rustdesk/releases RustDesk 官方部署教程&#xff1a;https://rustdesk.com/docs/zh-cn/ 1&#xff1a;RustDesk 概览# 1…

Qt读写Usb设备的数据

Qt读写Usb设备的数据 问题:要读取usb设备进行通讯&#xff0c;qt好像没有对应的库支持。解决&#xff1a;libusbwindow下载 :Linux下载: QtUsb 开源的第三方库库里面的函数说明&#xff1a;window版本&#xff1a;Linux中也提供的直接下载测试代码&#xff1a;库下载&#xff1…

模板初阶,STL简介(C++)

1.模板 1.1泛型编程 在之前的文章中讲过C支持函数重载&#xff0c;比如实现一个交换函数&#xff0c;可以是不同的数据类型&#xff0c;但是这样&#xff0c;需要增加大量函数&#xff0c;且可维护度比较低。 如&#xff1a; void Swap(int& left, int& right) {int …

Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64

yum install 报错: Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64 CentOS7的SCL源在2024年6月30日停止维护了。 当scl源里面默认使用了centos官方的地址&#xff0c;无法连接&#xff0c;需要替换为阿里云。 cd /etc/yum.repos.d/ 找到 CentOS-SCLo-scl.repo 和…

蓝桥杯不知道叫什么题目

小蓝有一个整数&#xff0c;初始值为1&#xff0c;他可以花费一些代价对这个整数进行变换。 小蓝可以花贵1的代价将教数增加1。 小蓝可以花费3的代价将整数增加一个值,这个值是整数的数位中最大的那个(1到9) .小蓝可以花费10的代价将整数变为原来的2倍, 例如&#xff0c;如果整…

2024年11月HarmonyOS应用开发者高级认证全新题库

注意事项&#xff1a;切记在考试之外的设备上打开题库进行搜索&#xff0c;防止切屏三次考试自动结束&#xff0c;题目是乱序&#xff0c;每次考试&#xff0c;选项的顺序都不同&#xff0c;作者已于2024年11月22日又更新了一波题库&#xff0c;题库正确率99%&#xff01; 新版…

技术文档的高质量翻译对俄罗斯汽车推广的影响

进入新市场需要的不仅仅是一个伟大的产品&#xff1b;它要求深入了解当地消费者的期望、法规和文化差异。对于希望在俄罗斯取得成功的国际汽车制造商来说&#xff0c;技术文件的质量是一个关键因素。手册、规范和服务指南在产品和用户之间形成了直接的桥梁&#xff0c;影响着客…

【组件】前端ElementUi 下拉Tree树形组件 带模糊搜索自动展开高亮功能 树结构 封装为组件使用

【组件】前端ElementUi 下拉Tree树形组件 带模糊搜索自动展开高亮功能 树结构 【组件】前端ElementUi 下拉Tree树形组件 带模糊 https://live.csdn.net/v/436057 单独使用 <template><div><el-popoverstyle"overflow-y: auto; "placement"bottom…

论文阅读:Dual-disentangled Deep Multiple Clustering

目录 摘要 引言 模型 实验 数据集 实验结果 结论 摘要 多重聚类近年来引起了广泛关注&#xff0c;因为它能够从不同的角度揭示数据的多种潜在结构。大多数多重聚类方法通常先通过控制特征之间的差异性来提取特征表示&#xff0c;然后使用传统的聚类方法&#xff08;如 …

SQL 复杂查询

目录 复杂查询 一、目的和要求 二、实验内容 &#xff08;1&#xff09;查询出所有水果产品的类别及详情。 查询出编号为“00000001”的消费者用户的姓名及其所下订单。&#xff08;分别采用子查询和连接方式实现&#xff09; 查询出每个订单的消费者姓名及联系方式。 在…

thread_id_key != 0x7777(`fibers` 包与 Node.js 16 及以上版本存在兼容性问题)

文章目录 fibers4.0.3 与 node-v16.13.2-win-x64 的兼容性1. Node.js 版本兼容性2. 特定包版本 (fibers4.0.3)3. 解决方案和替代方案 结论解决方案 运行yarn serve 启动项目&#xff0c;就会弹出上述错误。 fibers4.0.3 与 node-v16.13.2-win-x64 的兼容性 要判断 fibers4.0.3…

数据结构 (6)栈的应用举例

1. 递归调用 递归函数在执行时&#xff0c;会将每一层的函数调用信息&#xff08;包括局部变量、参数和返回地址&#xff09;存储在栈中。当递归函数返回时&#xff0c;这些信息会从栈中弹出&#xff0c;以便恢复之前的执行状态。栈的后进先出&#xff08;LIFO&#xff09;特性…