SAS数据集的建立、存储、导出、导入和编辑

某班某课程的三个测试成绩如下表:

序号

学号

姓名

性别

test1

test2

test3

1

20093096

毛万进

88

79

92

2

20093097

李海铭

81

83

85

3

20093098

仇语言

80

79

83

4

20093099

庞晓娟

89

76

91

5

20093100

刘栢童

86

80

88

6

20093101

王志平

76

85

82

7

20093102

黄菊红

85

78

89

8

20093103

屈欢欢

81

90

87

9

20093104

罗文秀

90

72

85

10

20093105

柯彬彬

87

68

81

11

20093106

彭小军

76

84

81

12

20093108

陈阿鸿

68

79

75

13

20093109

崔根来

78

80

85

14

20093110

宋伟军

77

83

82

15

20093112

黄拥华

67

78

74

16

20093113

黎芳

80

82

86

17

20093114

李亚桢

79

89

83

18

20093115

谭庆

57

68

66

19

20093116

邹翠霞

74

95

82

20

20093118

王赵辉

54

78

64

21

20093119

刘已鹏

76

89

83

22

20093120

周志建

72

85

77

23

20093122

肖江

64

90

74

24

20093123

郑红日

57

65

65

25

20093124

秦瑶

82

81

86

26

20093126

周晗晶

88

88

91

27

20093127

段梦

96

93

95

28

20093128

许哲榕

89

89

91

29

20093129

柏华洋

79

87

83

30

20093130

申鹏飞

65

89

74

31

20093132

吴高飞

88

79

92

32

20093133

方文

87

84

90

33

20093134

王环环

82

86

87

34

20093135

符文庆

82

90

86

根据上述数据,按下列要求分别建立SAS数据集

  1. 建立临时数据集名aaa,写出相应的程序;
  2. 建立SAS库标记study;
  3. 将上述数据存放在(2)中建立的库中,并取数据集study.aaa,并加以查看,写出相应的程序;
  4. 将上述数据建立一个excel外部数据,然后转化为SAS数据集,并加以呈现呈现,写出相应的程序;
  5. 将(3)中建立的数据集中的所有男生放到数据集studentf中,而所有女生放到数据集studentm中. 并加以呈现呈现,写出相应的程序。
  6. 求出数据集study.aaa中test1,test2,test3的总分和平均分,并加以呈现呈现,写出相应的程序。

实验目的:

  1. 了解SAS系统的主要窗口及其功能(2)了解SAS程序的组成及SAS程序规则;(3)掌握新库标记的建立及建立永久的和临时的SAS数据集的方法(4)外部数据集导入称为SAS数据集集及SAS数据集的编辑。

实验程序:

1、

data aaa;

input xuhao xh name$ sex$ test1-test3;

cards;

1 20093096 毛万进 88 79 92

2 20093097 李海铭 81 83 85

3 20093098 仇语言 80 79 83

4 20093099 庞晓娟 89 76 91

5 20093100 刘栢童 86 80 88

6 20093101 王志平 76 85 82

7 20093102 黄菊红 85 78 89

8 20093103 屈欢欢 81 90 87

9 20093104 罗文秀 90 72 85

10 20093105 柯彬彬 87 68 81

11 20093106 彭小军 76 84 81

12 20093108 陈阿鸿 68 79 75

13 20093109 崔根来 78 80 85

14 20093110 宋伟军 77 83 82

15 20093112 黄拥华 67 78 74

16 20093113 黎芳 80 82 86

17 20093114 李亚桢 79 89 83

18 20093115 谭庆 57 68 66

19 20093116 邹翠霞 74 95 82

20 20093118 王赵辉 54 78 64

21 20093119 刘已鹏 76 89 83

22 20093120 周志建 72 85 77

23 20093122 肖江 64 90 74

24 20093123 郑红日 57 65 65

25 20093124 秦瑶 82 81 86

26 20093126 周晗晶 88 88 91

27 20093127 段梦 96 93 95

28 20093128 许哲榕 89 89 91

29 20093129 柏华洋 79 87 83

30 20093130 申鹏飞 65 89 74

31 20093132 吴高飞 88 79 92

32 20093133 方文 87 84 90

33 20093134 王环环 82 86 87

34 20093135 符文庆 82 90 86

;

run;

proc  print data=aaa;

run;

2、3、

libname study'D:\SAS\SAS学习';

data study.aaa;

set aaa;

keep xuhao xh name sex test1-test3;

run;

proc print data=study.aaa;

run;

4、

proc import out=aaa

datafile="C:\Users\86166\Desktop\IT\SAS实验\实验1\SAS实验1.xls"              

dbms=excel2000 replace;

proc print data=aaa;

5、

data studentf studentm;

set study.aaa;

select (sex);

when ("男") output studentf;

when ("女") output studentm;

otherwise put sex="错误";

end;

run;

proc print data=studentf;

proc print data=studentm;

run;

6、

data st;

set study.aaa;

sum=test1+test2+test3;

averge=sum/3;

run;

proc print data;

实验中存在的问题及解决的办法:

问题:1、要输入的数据是一个表,如何把它输入到PMG里面?

  1. 当要输入的是汉字的时候,如何输入到PMG里面、
  2. 从外部Excel中导入数据,为什么列名被其他符号代替了?

解决:

  1. 在word文档中把表复制到cards;的后面,但在实际中我理解的是表格并不能直接输入,于是把表复制到excel中,利用python转换为txt文本输入。
  2. 在txt文件中写好代码,再复制到PMG窗口中即可。
  3. 因为从excel中导入的列名夹杂中文,不能被SAS识别
  • 6
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我的思路很明确

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值