全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3873 7
2007-12-08

   现有一个数据流:a 2 b 3 c d 4 6,按下面要求创建SAS数据集。用语句input id $ no;  变量id取值上面数据流里的a,b,c,d,变量no取值2,3,4,6。但是这个数据流存在问题:如有的id没有no,有的no没有id。创建SAS数据集,删除只有id没有no或者只有no没有id的观测,即把上面的c6去掉,最后得到三个观测,a 2, b 3d 4

二维码

扫码加我 拉你入群

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

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

全部回复
2007-12-8 21:33:00

大哥,你问的问题还真变态啊! SAS俺没弄出来,给您段 C++ 将就着用吧~~~~~~~~~~~

#include <iostream>
void fun(char a);
int main()
{
 using namespace std;
 int n;
 cin>>n;
 cout<<endl;
 char *ch,*zh;
 ch=new char[n];
 zh=new char[n];
    for(int m=0;m<n;m++)
 {
  cin>>ch[m];
  cout<<"\t";
 }
 int k=0;
 for(int i=0;i<n;i++)
 {
  if((isalpha(ch))&&(isdigit(ch[i+1])))
        {
            zh[k]=ch;
   zh[k+1]=ch[i+1];
   k+=2;
  }
 }
 cout<<endl;
 for(int j=0;j<n;j++)
 {
  cout<<zh[j]<<"\t";
 }
cout<<endl;
 delete[] ch;
 delete[] zh;
 return 0;
}

二维码

扫码加我 拉你入群

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

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

2007-12-8 22:23:00
你,要干什么?
二维码

扫码加我 拉你入群

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

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

2007-12-9 22:44:00

这样也许有帮助

data base;
  input z $ @@;
  retain x ctrl;
  if   'a'<=lowcase(z)<='z'  then ctrl= 1;
                    else ctrl =0;
  if ctrl  then x=z;
  else y=input(z,1.);
  if ctrl not = lag(ctrl) and not ctrl then output;
  keep x y;
cards;
a 2 b 3 c d 4 6
;
run;

proc print;
run;

二维码

扫码加我 拉你入群

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

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

2007-12-10 10:47:00

可能是你的输入形式不对,SAS中输入数据有缺失值的地方要用"." 表示,

正确的数据输入格式为:a 2 b 3 c . d  4  . 6

二维码

扫码加我 拉你入群

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

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

2009-6-15 23:43:43
好的,真不错
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

分享

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