zoukankan      html  css  js  c++  java
  • 一个matlab小程序:挑出沪市A股年报与一季度报在同一天发布的股票

    function [a,b,c]=sameday(x,y)
    % x,y分别是年报与次年一季度报的发布时间,其格式是:股票代码  公告年  季  发布年  月  日;

    %  有些x和y的数据记录可能有重复,就是相邻两行的数据相同。下面两段程度分别去掉x和y中重复记录的部分数据;
    id=zeros(size(x,1),1);
    for i=2:size(x,1)
        if x(i,1)==x(i-1,1)
            id(i)=i;
        end
    end
    id=find(id(:,1)==0);
    x=x(id,:);

    id=zeros(size(y,1),1);
    for i=2:size(y,1)
        if y(i,1)==y(i-1,1)
            id(i)=i;
        end
    end
    id=find(id(:,1)==0);
    y=y(id,:);

    % 由于数据不全,可能某些股票只有年报或一季度报的数据,下面两段程序找出同时又年报和一季度报数据的股票,并赋值给a和b;
    id=zeros(size(x,1),1);
    for i=1:size(x,1)
        if any(y(:,1)==x(i,1))
            id(i)=i;
        end
    end
    id=find(id(:,1)~=0);
    a=x(id,:);

    id=zeros(size(y,1),1);
    for i=1:size(y,1)
        if any(a(:,1)==y(i,1))
            id(i)=i;
        end
    end
    id=find(id(:,1)~=0);
    b=y(id,:);

    % 找出年报与一季度报在同一天发布的股票,赋值给c;
    if any(a(:,1)-b(:,1)~=0)
        fprintf('Something goes wrong\n')
    else
        c=[a,b(:,[2:end])];
        id=find( (c(:,1)>=600000)&(c(:,5)==c(:,10)) & (c(:,6)==c(:,11)) );
        c=c(id,:);
    end

  • 相关阅读:
    47. Permutations II
    56. Merge Intervals
    57. Insert Interval
    常见算法问题
    67. Unique Paths
    版权声明
    121. Best Time to Buy and Sell Stock
    Leetcode backtracking 合集
    转载 int和string 类型的互换
    prim算法,克鲁斯卡尔算法---最小生成树
  • 原文地址:https://www.cnblogs.com/mphyfin/p/2096847.html
Copyright © 2011-2022 走看看