SAS编程数据挖掘学习笔记(原创).docx_第1页
SAS编程数据挖掘学习笔记(原创).docx_第2页
SAS编程数据挖掘学习笔记(原创).docx_第3页
SAS编程数据挖掘学习笔记(原创).docx_第4页
SAS编程数据挖掘学习笔记(原创).docx_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1. 数据集永久(可以自己建立逻辑库,也可以放sasuser逻辑库中)在和临时(work逻辑库中);2建立数据集(1)建立永久数据集,必须先用LIBNAME语句定义一个逻辑库名。e.g. libname mylib D:软件新SAS2015-2014.3SASLX; data mylib.test; input x y; datalines; 1 2 2 4 3 6 4 8 ; Proc print;Run;(2)从外部文本数据文件中读入数据A从建议的数据集中读入数据:set;e.g. data ex3;set mylib.test;a=x+y;proc print;run;Bproc import 过程实现外部数据的导入(txt和xls都可以)proc import datafile=D:软件新SAS2015-2014.3SASLXdata1.txtout=sasuser.test2 replace;getname=yes;run;proc print data=sasuser.test2;run;proc import datafile=D:软件新SAS2015-2014.3SASLXfit.xlsxout=work.fit1t (where=(Sex=M) replace;*getname=yes;可以省略run;proc print data=work.fit1t;run;proc import datafile=D:软件新SAS2015-2014.3SASLXfit.xlsxout=work.fit3t replace;sheet=sheet2;*getname=yes;run;proc print data=work.fit3t;run;3.keep语句保留变量只有Keep语句中出现的变量被写入新数据集中。4.条件语句,select语句data C;infile D:软件新SAS2015-2014.3SASLXtest2.txt;length num $ 4 name $ 10;input num $ name $ score1 score2 score3 sex $;select (sex);when (M) put 性别:男;when (F) put 性别:女;end;run;proc print data=work.C;run;data example1;set sasuser.mytest;select (Sex);when (M) put name 男;when (F) put name 女;end;run;proc print data=work.example1;run;data ex1;set work.score;select (sex);when (F) put name 女;when (M) put name 男;end;run;5.where语句data class;set work.score;where sex=F and math =90;run;proc print data=work.class;run;6.delete语句data cla;set work.score;if sex=F and math =90 then do;put name;delete;end;run;proc print data=work.cla;run;7.循环语句do while语句8.数组9.数据排序 proc sort过程data class2;set work.score;run;proc sort data=work.class2 out=CS1;by num descending math;run;proc print data=work.CS1;run;10.数据集连接:set 11.描述性统计分析(第七章)(1)proc meanproc import datafile= D:软件新SAS2015-2014.3SASLXfit.xlsxout=mylib.score1;getname=yes;run;proc means data=mylib.score1 maxdec=3;var math phys english;run;(2)proc freqdata abc;do a = 1 to 2; do b=1 to 2; input f ; output; end;end;cards;52 19 39 3;proc freq; weight f;tables a*b/chisq expected nopercent nocol;run;(3)proc univariate12.假设检验Proc ttest(1)单样本t检验data time;input time ;datalines;43 90 84 87 116 95 86 99 93 92 121 71 66 98 79 102 60 112 105 98;run;proc ttest h0=80 sides=u alpha=0.05;var time;run;(2)成组实验的t检验data ex823;input x ;if _n_11 then a=2;else a=1;datalines;2.60 3.24 3.73 3.73 4.32 4.73 5.18 5.58 5.78 6.40 6.531.67 1.98 1.98 2.33 2.34 2.50 3.60 3.73 4.14 4.17 4.57 4.82 5.78;proc ttest;class a;var x;run;(3)配对比较t检验:data pressure;input a1 a2 ;datalines;120 128 124 131 130 131 118 127140 132 128 125 140 141 135 137126 118 130 132 126 129 127 135;run;proc ttest;paired a1*a2;run;(4)t检验属于参数的假设检验,前提条件是总体的分布为正太分布。但在许多实际问题中,总体的分布形式很难确定,或者总体的分布为偏态。在这种情况下,t检验就不适用了,一般可选用非参数统计方法。Npar1way过程专门用来处理单因素的非参数检验。data na;input x ;a=1;if _n_5 then a=2;if _n_14 then a=3;datalines;13 6.8 7.8 15.5 11.414.1 7.9 6 6.7 5.2 10.7 3.8 9.4 13.99.2 11.6 4.2;run;proc npar1way wilcoxon;秩和检验class a;var x;run;13.方差分析方差分析是检验两个或多个样本均数间差异是否具有统计意义的一种方法。(和假设检验中的两个样本的均值检验的区别?)多组均数间的多重比较:研究因素单元对因变量影响之间是否存在显著性差异。(1)完全随机设计资料的方差分析(单因素方差分析)Proc anova过程data anova1;do i=1 to 5; do a=1 to 4; input x ; output;(循环输入数据时必不可少!) end;end;drop i;datalines;2.33 2.48 3.04 4.00 2.00 2.34 3.06 5.13 2.93 2.68 3.00 4.612.73 2.34 2.96 2.80 2.33 2.22 3.06 3.60;run;proc univariate data=anova1 normal;正态性检验class a;var x;run;proc anova;方差分析class a;model x=a;run;(2)随机区组设计资料的方差分析(两因素方差分析:窝别和饲料)data anova3;do a=1 to 8; do b=1 to 5; input x ; output; end;end;datalines;24 15 27 57 82 42 28 37 51 6660 29 47 53 74 50 29 42 51 7942 24 34 60 82 39 38 27 69 7647 21 32 54 73 53 37 42 59 90;proc univariate data=anova3 normal;var x;by a;run;proc univariate data=anova3 normal;var x;by b;run;proc anova data=anova3;class a b;model x=a b;run;quit;(3)拉丁方资料的方差分析当实验中涉及三个因素,三个因素的水平数相同,且它们之间无交互作用或是交互作用可忽略不计时,可用拉丁方设计的方差分析。(程序几乎同上)(4)析因实验设计(5)R*C析因设计资料的方差分析(这个用的比较多,4和5基本是一样的实验设计)甲药不用用乙药不用0.80.90.71.31.21.1用0.91.11.02.12.22.0data anovo4;do a=0 to 1; do b=0 to 1; do i=1 to 3; input x ; output; end; end;end;drop i;datalines;0.80.90.7 0.91.11.0 1.31.21.1 2.12.22.0;proc anova;class a b;model x=a b a*b;run;(6)GLM过程前面介绍的anova过程只能用于平衡设计资料(每个分类因子的组合观察数相等)的方差分析;对于样本通量不等(非平衡)的数据做方差分析时,应采用GLM过程。应当说明的是,对样本容量相等的数据,用anova过程作方差分析的效率和可靠性等方面,都优于GLM过程。因此在实验设计和实验实施时,应当尽可能对不同实验条件下做相同次数的实验和测量。除非受实验条件限制。GLM是数据分析过程中功能最丰富的一个过程,它包括:简单回归、多重回归及多元回归、方差分析(尤其对不平衡设计资料更为有效)、协方差分析、加权回归、多项式回归、偏相关分析、多元方差分析和重复测量方差分析等。data glm1;a=1;input x ;if _n_ 10 then a=2;if _n_ 19 then a=3;datalines;58 61 61 62 63 68 70 70 74 7854 57 57 58 60 60 63 64 6643 52 55 56 60;proc glm;class a;model x=a;run;(7)协方差分析协方差分析法是把直线回归法与方差分析结合起来的一种方法;它利用回归的关系消除对比各组自变量值不同所产生的影响后,再进行方差分析。如在营养实验中,初始重量对喂养过程中增重的影响很大,方差分析忽略了始重不同的影响,因而不能反映出饲料的真实效应。用直线回归把初始重量与所赠体重的关系找出来,然后求出当初始重量化为相等时,各饲料组动物所增体重的调整均数,用协方差分析检验调整均数间的差异。data glm3;a=1;input x y ;if _n_ 8 then a=2;if _n_ 16 then a=3;datalines;18 85 16 89 11 65 14 80 14 78 13 83 17 91 17 9517 95 18 100 18 94 19 98 21 104 21 97 16 90 22 10617 91 23 89 23 98 20 82 24 100 25 98 25 102 26 108;proc univariate normaltest;var y;by a;run;proc glm;class a;model y=a x a*x;proc glm;class x;model y=x a x*a;run;quit;proc glm;class a;model y=a x;lsmeans a;run;quit;14.相关与回归(1)proc corr过程Proc corr data=dataset;Var 变量表;With 变量表;Partial 变量表;By 变量表;Run;Proc corr语句的选项主要有:Data=datasetPearson皮尔逊积矩相关,为默认值;Kendall肯德尔r-b系数;Spearman斯皮尔曼等级相关系数;Nosimple抑制简单统计With语句,指定与var语句配对的变量名,有with语句存在时,不再进行Var变量间的相关分析,而是对每个var变量和每一个with变量间进行相关分析。(2)简单相关分析data corr1;input x1-x3 y ;datalines;35 60 0.7 1600 40 74 2.5 2600 40 64 2.0 2100 42 71 3.0 2650 37 72 1.1 2400 45 68 1.5 2200 43 78 4.3 2750 42 65 3.0 2500;proc corr dataset=corr1 nosimple;run;proc corr;partial x1; 控制x1变量固定不变时,x2和x3变量与y的相关程度,偏相关系数。run;偏相关系数,在研究多个变量中两两变量之间的相关性时,把两变量之外的其他变量作为固定变量所求得的偏相关系数更能真实地反映出两变量之间的相关程度。(3)等级相关分析(spearman)Proc corr spearman;Var 变量表;Run;(4)典型相关分析:proc cancorr过程典型相关分析(canonical correlation analysis)就是利用综合变量对之间的相关关系来反映两组指标之间的整体相关性的多元统计分析方法。它的基本原理是:为了从总体上把握两组指标之间的相关关系,分别在两组变量中提取有代表性的两个综合变量U1和V1(分别为两个变量组中各变量的线性组合),利用这两个综合变量之间的相关关系来反映两组指标之间的整体相关性。Proc cancorr data=dataset all;Var 用于指定第一组数值型分析变量;With 用于指定第二组数值型分析变量;Partial;对典型相关分析的结果进行解释。(5)reg过程data reg1;input x y ;datalines;820 165 780 158 720 130 867 180 690 134 787 167 934 186 679 145 639 120 820 158;proc corr;var x y;run;proc reg;model y=x;run;proc reg;model y=x/noint; 因为截距项无统计意义,所以应不要截距重新拟合直线回归方程。run;为了使回归方程包含对因变量影响有统计意义的变量,而不包含对因变量影响无统计意义的变量,可使用逐步回归法。(6)stepwise过程libname mylib D:软件新SAS2015-2014.3SASLX;data reg2;infile D:软件新SAS2015-2014.3SASLXfitx.txt;input age weight oxy runtime rstpulse runpulse maxpulse;proc stepwise;model oxy=runtime age weight runpulse maxpulse rstpulse;run;(7)非线性回归Nlin过程data nlin1;input times rate ;datalines;1 63.9 2 36 3 17.1 4 10.5 5 7.3 6 4.5 7 2.8 8 1.7;proc plot;plot rate*times=+;run;proc nlin;parms a=0 b=0;model rate=exp(a+b*times);run;(8)logistic 过程data coronary;infile D:软件新SAS2015-2014.3SASLXcoronary1.txt;input x1-x8 y;run;proc logistic descending;程序中descending表示因变量y的取值由大到小排列,以便计算因变量y值为1的概率。model y=x1-x8/selection=stepwise sle=0.1 sls=0.1 stb;model语句,后面的选项selection=stepwise表示用逐步法筛选自变量,选项sle=0.1 sls=0.1表示变量进入模型和留在模型中的新助兴水平均为0.1,选项stb表示计算标准化回归系数。run;quit;15判别分析(与聚类分析区分)判别分析是根据观测到的某些指标对研究对象进行分类的一种统计分析方法,已知样本的分类及所测的指标,对未知分类的样本,可将所测指标代入判别方程,判断它所属的总体类别。和聚类分析不同,各种判别分析都要求有分类的先验知识。SAS的判别分析过程:1) discrim过程该过程可以对一个或多个数值变量计算线性或二次判别函数,对观测进行分类。2) neighnor过程该过程用于各类数据不是多元正态分布的情况,进行最邻近判别分析,根据最邻近原则或K最邻近原则将观测分类。3) candisc过程该过程执行典型判别分析,典型判别分析是与主成分及典型相关有关的维数缩减技术。4) stepdisc过程该过程又称逐步判别分析,是变量选择技术,它通过向前选择、向后剔除、逐步选择三种选择变量的方式,进行逐步判别分析。常用的为2和4种方法。(1) discrim过程discrim过程中涉及两种判别方法,一种为参数判别方法,另一种为非参判别方法。参数方法:假设每组数据都呈多元正态分布,根据计算广义平方距离求出判别方程或判别准则。非参数方法:当用于判别分析的原始数据分布不确定时,采用非参数方法,利用kernel或k最邻近方法求出每组的非参概率密度估计,最后得到判别准则。data heart;infile lujing;input dbp chol;if _n_F皆小于0.05,说明对判别效果有高度的统计意义。第二步:由于stepdisc过程只能进行变量选择,因而其输出结果不包括方程和判别矩阵,所以再用discrim过程对stepdisc过程选入判别方程的两个变量进行分析。libname mylib lujing;proc discrim data=mylib.stomach outstat=mylib.outpool=test anova manova crosslisterr noclassify;var water indole;class illness;run;第三步:有8个待判病例,测得每位患者的water和indole化验值列在程序中cards语句后。proc format;value illname 1=feiweiai 2=weiai;data test;input water indole ;datalines;*;libname mylib lujing;proc discrim data=mylib.out testdata=test testout=out2;var water indole;class illness;proc print data=out2;run;16.聚类分析按分类对象的不同分为样品聚类(Q型聚类)和变量聚类(R型聚类)。聚类和回归分析有着密切关系,当自变量太多,且有某种相关时,应先通过变量聚类,从每一类中挑选一个最有代表性的自变量进行回归。(1)Proc cluster过程data mileages (type=distance);input (atlanta chicago denver houston losangel miami newyork sanfran seattle washdc) (5.)51 city $ 15.;datalines;0 atlanta587 0 chicago1212 920 0 denver701 940 879 0 houston1936 1745 831 1374 0 losangel604 1188 1726 968 2339 0 miami748 713 1631 1420 2451 1092 0 newyork2139 1858 949 1645 347 2594 2571 0 sanfran2182 1737 1021 1891 959 2734 2408 678 0 seattle543 597 1494 1220 2300 923 205 2442 2329 0 washdc;run;proc cluster data=mileages method=average pseudo;id city;proc tree;run;Normalized RMS Distance:标准化的均方根距离,用此距离可以判断聚类的合适数量,当某一步的标准化的均方根距离增加的幅度最大时,此步前的聚类数最合适。本例中,当类别从两个变为一个时,标准化均方根距离增加的幅度最大,有0.80005增加到1.2967,可判断此例聚类的合适数量为两类。proc import datafile=D:软件新SAS2015-2014.3SASLXiris.xlsx out=work.irisa replace;run;proc cluster data=work.irisa method=ward outtree=otree pseudo ccc;var x1-x4;proc tree;run;上例用proc fastclus过程的结果如下所示:proc import datafile=D:软件新SAS2015-2014.3SASLXiris.xlsx out=irisdata replace;sheet=sheet1;getname=yes;options obs=150;proc fastclus data=irisdata maxclusters=5 out=fcl;var x1-x4;id sample;*proc sort data=fcl out=sortfcl;*by cluster;proc print data=sortfcl;run;如果样本量比较大的话,可以先用cluster过程来确定分几类比较合适,然后再用fastclus过程来看分类结果。(2) Proc fastclus过程:动态聚类过程,也叫快速聚类,此过程主要用于大样本数据的聚类,其观测数据超过100.该过程不形成树状结构,产生两个输出数据集,其中一个含有类成员关系变量,另一个含有聚类均值。Fastclus过程输出内容很少,大多数情况需建立一个数据集再用其他过程像print、plot、chart、means、discrim或candidc等过程对类进行细致的研究。聚类方法:使用最近质心分类方法。首先选择一些“种子”(seed),作为各类均值的初次猜测,之后每个观测划分到与它最近的种子代表的类,以构成临时的类,再用这些临时类的均值代替初始种子,过程如此循环,直至分成的类在没有什么变化为止。(K-means算法)。Proc fastclus maxclusters=n|randius=t;Var 变量;proc import datafile=lujing*.xlsx dbms=excel2010 out=sptdata replace;sheet=sheet1;getname=yes;options obs=55; 数据仅用55个观测,不用此选项会将一条空记录导入。proc fastclus data=sptdata maxclusters=6 out=fcl;聚类结果输出到fcl数据集。id nation;proc sort data=fcl out=sortfcl;by cluster;proc print data=sortfcl;run;(3) varclus过程proc varclus过程被用来对变量进行聚类分析,是一种减少变量的方法。proc import datafile=lujing out=work.dataset replace;sheet=sheet1;getnames=yes;options obs=n;label x1=食品 x2=衣着 x3= x4= ;proc varclus data=work.dataset;var x1-x4;run;quit;(4) Tree过程前面的聚类分析的各过程中已多次用过。proc import datafile=D:软件新SAS2015-2014.3SASLXteeth.xlsxout=work.teeth replace;sheet=sheet1;getnames=yes;options obs=32;run;proc cluster method=average std pseudo noeigen outtree=tre;id mammal;var v1-v8;run;proc tree noprint data=tre out=part nclusters=4;id mammal;copy v1-v8;proc sort data=part out=sortpart;by cluster;proc print data=sortpart;*id mammal;var v1-v8;*by cluster;run;17.因子分析 proc factor过程因子分析与主成分分析的区别。18.主成分分析proc princomp过程补充部分:Logistics逻辑回归强化和数据挖掘SAS应用1.options user=fv;proc print data=lanls;run;proc contents data=sashelp.class out=class_cnt;run;2. SAS索引在商业实践中,不建议过多地使用创建索引,除非该索引能够明显改善应用平台的执行。SAS目录数据字典:数据字典对用户是不可见的,检索数据字典的信息只能在SQL过程步中进行。然而数据字典有对应的数据视图,数据视图对用户是可见的,存放在sashelp逻辑库中。常用的数据字典查询语句:proc sql flow=10; title2 description of each dictionary table; describe table dictionary.members,dictionary.tables,dictionary.catalogs,dictionary.columns, dictionary.extfiles,dictionary.indexes,dictionary.options,dictionary.views;quit;proc sql flow=10;3. SAS常用自动变量_n_ _all_ 4. 数据获取的方式(1) libname方式(最主要的方式)直接访问外部数据库:libname sps spss E:2014文件夹SAS2015SAS编程与数据挖掘商业案例SASBookDataYaoZhiyongchapt3;libname oralib oracle user=888 pw=00000 path=dbmssrv schema=educ;通过ODBC访问:首先要创建ODBC数据源,然后libname odb odbc user=888 password=0000 datasrc=test;(2) passthrough方式(仅次于libname方式的应用)通过connect语句建立SAS和其他数据库之间的通信,并使用SQL过程将其他数据库数据直接导入SAS系统,如下例:proc sql;connect to teradata (user=888 password=0000 database=acess_views tdpid=xxx mode=teradata);create table sas_tb as select * from connection to teradata(select * from test.tb1);disconnect from teradata;quit;(3) import方式(4) input方式在商业实践中,是最不常用的一块,即便使用,一般也只是做测试数据集。5. set语句 keep语句 where语句data keep;set sashelp.class(keep=name sex);run;data where;set sashelp.class(keep=name sex where=(sex=男);run;firstobs=和obs=的应用point=选项的应用:point=后面跟变量,而不是常数,如下例,data point1;n=3,15,4,19;set sashelp.class point=n;output;stop;run;point语句还可以指定多条观测。End=应用:data end;set sashelp.class end=last_obs;flag=last_obs;run;set/set语句的应用:data a;input x $ ;datalines;a1 a2 a3;run;data b;input y $ ;datalines;b1 b2;run;data ab;set a;set b;run;data ba;set b; set a;run;data c;set a b;run;(5)一个例子的实现:proc sql;create table profit2 asselect a.flightid,a.expenses,a.fltdate,b.income,sum(income,-expenses) as profitfrom chapt3.dnunder as ajoin chapt3.sales as bon a.flightid=b.flightid and a.fltdate=b.fltdate;quit;set/set语句代码的应用:proc datasets lib=chapt3;modify income;index create dteflt=(flightid fltdate)/nomiss unique;quit;data profit;set chapt3.expenses;set chapt3.income key=dteflt;if _iorc_=0 then do;profit=sum(income,-expenses);output profit;end;else do;_error_=0;Output errors;end;run;by语句:规定分组变量;merge语句:实现多表的横向合并。proc sort chapt3.merge_a;by x;run;proc sort chapt3.merge_b;by x;run;data test0;merge chapt3.merge_a(in=a) chapt3.merge_b(rename=(bx=x)in=b);by x;ina=a;inb=b;run;一对一匹配、一对多匹配和多对多匹配等。Update语句 modify语句:可以替代、删除或添加新观测到的一个已存在的数据集,并且可以在没有创建备份的情况下节省磁盘空间,因此其应用相当广泛。主要应用于以下几个方面:(1) 根据某些需求条件更新特定变量(组);(2) 对主数据集的某些变量做历史累加。一个实例如下:data master_trans;input user_id trans_amt ;cards;101 1000 102 1500 103 2000;run;data day_trans;input user_id day_amt ;cards;102 50 102 60 103 30 110 80 ;run;proc sql;create table temp as select user_id,sum(day_amt) as day_amt from day_trans group by user_id;quit;proc sort data=master_amt;by user_id;run;proc sort data=temp;by user_id;run;data master_trans;merge master_trans temp;by user_id;trans_amt=sum(trans_amt,day_amt);run;data master_trans;modify master_trans day_trans;by user_id;trans_amt=sum(trans_amt,day_amt);if _iorc_=0 then replace;else do;trans_amt=day_amt;_error_=0;output;end;run;如果不考虑时间成本,这个需求可以通过sql来实现,但在现实商业环境中,效率永远是第一位的,并且由于该需求对象是每天的交易记录,一般数据量都非常大,因此,SAS语言环境下,modify是处理此类问题的最好办法。data test; aaa=1; set sashelp.class(keep=name sex in=in1); *by name; bbb=bbb; set sashelp.class(keep=age weight height in=in2); *a=in1;b=in2; put _all_; run;第三章到第九章跳过,后面重点是第十章SAS宏变量,第十三章数据挖掘概念、任务和流程,第十四章响应模型:定位新客户,第十五章行为建模:客户行为属性分析的内容。在4.30号之前看完!第十章 SAS宏变量 4.23 周四1.宏变量(1)定义宏变量最简单的创建宏变量的方法是使用宏程序语句%let.(2)引用宏变量 & .在间接引用宏变量时,一定要注意句点符号的应用。如下例:%let mvar=here;%let x=10;%put &mvar.&x;2.宏程序(宏)(1)定义宏%macro 宏名;文本;%mend 宏名;(2)调用宏%宏名;(3)宏存储创建永久存储的宏,如下例:libname test E:2014文件夹SAS2015SAS编程与数据挖掘商业案例SASBookDataYaoZhiyongchapt10;options mstored sasmstore=test;%macro test/store;data a;input x y ;datalines;1 2 3 4 5 6;run;%mend test;调用永久存储的宏:libname test E:2014文件夹SAS2015SAS编程与数据挖掘商业案例SASBookDataYaoZhiyongchapt10;options mstored sasmstore=test;%test;3.宏参数(1)创建参数:按值创建和按址创建%macro value(x=,y=);Data test;X=&x;Y=&y;Run;%mend value;%macro addr(x,y);Data test;X=&x;Y=&y;Run;%mend addr;(2)参数赋值%value(x=10,y=20);%addr(10,20);4.宏函数5.宏语句(如下一个例子)%macro obs(parm);%let parm1=%upcase(&parm);%if &parm1=PRE %then%do;data pre_obs;set sashelp.class(obs=5);if sex=男 then y=1;else y=2;run;%end;%else %if &parm1=POST %then%do;data post_obs;set sashelp.class(firstobs=6);if sex=男 then y=1;else y=2;run;%end;%mend obs;%obs(post);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论