全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2826 3
2014-10-23
请问SAS中怎么求一个观测中多个变量的平均数?
数据如下:求每个观测8点钟的平均SBP、平均DBP、平均HR?注意有缺失值。谢谢各位!!
IDSBP081DBP081HR081SBP082DBP082HR082SBP083DBP083HR083SBP084DBP084HR084
213064628

131

72

75

131

76

82

133

88

74

139

89

80

213064909

115

82

72

134

87

69

136

89

71

213065234

135

74

78

133

72

79

136

74

77

211

51

95

213065361

123

75

60

115

77

59

125

87

64

136

92

63

213065554

152

97

77

146

103

101

138

94

72

138

84

74

213065870

138

88

74

136

89

75

137

85

77

135

89

55

213066381

120

81

96

128

85

90

129

85

88

130

85

90

213066491

137

44

91

136

62

90

121

69

87

127

67

81

213066685

160

108

81

164

110

83

157

116

86



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-10-24 12:22:33
有缺失值用 sum函数
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-1-8 19:20:36
SAS中没有专门的处理缺失值的过程步,但是在标准化变量的过程步中可以实现缺失值的填补。其基本过程如下:
PROC STDIZE DATA=dataset REPONLY METHOD= OUT=outdata ;
VAR variables ;
RUN;
其中proc stdize 是调用标准化过程步,data=表示需要进行缺失值填补的数据库,reponly的意思是只取代缺失值(replace missing data only),这个在均数填补法中必须要加上,不然就得不到想要的结果,method=就是选择填补方法,一般在针对计量资料时,我们一般选用均数填补法和中位数填补法(数据符合正态分布时METHOD=mean,偏态分布时选用METHOD=median),在填补计数资料没有什么好的办法,一般也使用中位数填补法,目的是尽量不要出现带小数点的填补项,但是其实使用中位数填补法有可能会产生带小数点的值,那就是当样本量(这里专门指排除缺失值后的样本量)是偶数的时候,打个比方:有一个100例的样本量,缺失2个,那么在这剩下的98个样本量中,中位数=[an/2+ a(n+2)/2]/2,当an/2和a(n+2)/2不相等时则中位数肯定为带小数的值。当然这种情况其实发生的概率很小,特别是大样本以及分类数很小的时候,万一发生了,者只好使用众数填补,即用出现频率最高的频数来填补,要是使用众数填补则不能使用以上的过程步了,目前没有找到很好的方法,只能使用最笨的方法,即使用proc means 过程步求出众数,然后在记录这个数值,在放到data 步中进行填补。
然后再用proc means
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-1-9 00:06:10
Mean函数自动忽略missing value
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群