Foxtable(狐表)用户栏目专家坐堂 → [求助]如何将数据分析结果生成新的数据表?


  共有6427人关注过本帖树形打印复制链接

主题:[求助]如何将数据分析结果生成新的数据表?

帅哥哟,离线,有人找我吗?
jyh7081
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:957 积分:8440 威望:0 精华:0 注册:2012/10/3 13:25:00
[求助]如何将数据分析结果生成新的数据表?  发帖心情 Post By:2013/8/11 22:48:00 [显示全部帖子]

分析股piao数据想做到:见附件
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:导入txt数据.zip

1、各只股piao星期*的平均涨幅

 星期    股piao1    股piao2     股piao3     股piao4     股piao5     股piao6    股piao7   ......          
   1平均涨跌幅平均涨跌幅 平均涨跌幅 平均涨跌幅 平均涨跌幅 平均涨跌幅

         
   2  ......                              
   3      ......                           
   4         ......                        
   5            ......                     

2、 各只股piao阴历*的平均涨幅
 阴历日期     股piao1      股piao2      股piao3       股piao4       股piao5   股piao6     ......             
  初一平均涨跌幅平均涨跌幅平均涨跌幅平均涨跌幅平均涨跌幅平均涨跌幅               
  初二                                 
  初三                                 
  ......                                 
                                    
                                    
                                    
                                    
                                    
                                    
                                    














 回到顶部
帅哥哟,离线,有人找我吗?
jyh7081
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:957 积分:8440 威望:0 精华:0 注册:2012/10/3 13:25:00
  发帖心情 Post By:2013/8/12 6:57:00 [显示全部帖子]

涨跌幅根据:(后一天的收盘价-前一天的收盘价)/前一天的收盘价*100%  计算得出。
比如:1997-10-16涨跌幅为
         (8.18-7.88)/7.88*100%=

时间, 开盘价,最高价,最低价,收盘价,成交量,金额
1997/10/15,8.00,8.18,7.81,7.88,310858.00,248436000.00
1997/10/16,7.90,8.20,7.83,8.18,123153.00,98570000.00
1997/10/17,8.20,8.21,7.90,7.98,77541.00,62038000.00
1997/10/20,7.96,8.28,7.94,8.16,80099.00,64948000.00
1997/10/21,8.26,8.38,8.14,8.23,60224.00,49562000.00
1997/10/22,8.16,8.23,7.79,7.81,69852.00,55574000.00
1997/10/23,7.85,8.00,7.80,7.83,32276.00,25433000.00


 回到顶部
帅哥哟,离线,有人找我吗?
jyh7081
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:957 积分:8440 威望:0 精华:0 注册:2012/10/3 13:25:00
  发帖心情 Post By:2013/8/12 7:14:00 [显示全部帖子]

能不能导入txt文件后,将生成的股piao狐表文件都增加一列“涨跌幅”列,然后再进行统计分析。

 回到顶部
帅哥哟,离线,有人找我吗?
jyh7081
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:957 积分:8440 威望:0 精华:0 注册:2012/10/3 13:25:00
  发帖心情 Post By:2013/8/12 20:07:00 [显示全部帖子]

非常感谢 lsy 提供的模块,但是:
1、选“追加(或覆盖)-多选-新增表格”时导入出错,多选改为全选时,导入正确。
2、点击“涨幅”进行计算时,仅对“股piao信息明细表”中的合并数据有效,但生成的新增数据表没有增加“涨跌幅”列,希望能够完善。

图片点击可在新窗口打开查看此主题相关图片如下:1.gif
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
jyh7081
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:957 积分:8440 威望:0 精华:0 注册:2012/10/3 13:25:00
  发帖心情 Post By:2013/8/12 21:26:00 [显示全部帖子]

比如, 将生成的新增数据表"西宁特钢"增加“涨跌幅”列 ,增加如下代码,对吗?对所有新增数据表增加“涨跌幅”列,怎么办?

(参照ADOXBuilder用于动态创建表和列)


Dim Builder As New ADOXBuilder

Builder.Open() 

With Builder.Tables("西宁特钢")

    .AddColumn("涨幅" ,ADOXType.Double) 

 If i = 0 Then

            drlist(i)("涨幅") = 0

        Else

            drlist(i)("涨幅") = (drlist(i)("收盘价") - drlist(i - 1)("收盘价")) / drlist(i - 1)("收盘价") * 1%

        End If  

   End With

Builder.Close()   


 回到顶部
帅哥哟,离线,有人找我吗?
jyh7081
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:957 积分:8440 威望:0 精华:0 注册:2012/10/3 13:25:00
  发帖心情 Post By:2013/8/12 22:21:00 [显示全部帖子]

谢谢 有点甜 ,但怎样是涨幅保留两位小数?

'新增的代码
Dim tname As String = FileSys.GetName(file.SubString(0, file.length - 4))
Dim drs As List(of DataRow) = DataTables(tname).Select("", "时间")
For i As Integer = 1 To drs.Count - 1
    drs(i)("涨幅") = (drs(i)("收盘价") - drs(i - 1)("收盘价")) / drs(i - 1)("收盘价") * 100
Next
            Next
        End If
    End If
End If
Tables("股piao信息明细表").ResumeRedraw()
e.Form.Close()
msgbox("导入结束")

 回到顶部
帅哥哟,离线,有人找我吗?
jyh7081
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:957 积分:8440 威望:0 精华:0 注册:2012/10/3 13:25:00
  发帖心情 Post By:2013/8/12 22:29:00 [显示全部帖子]

加在哪?

 回到顶部
帅哥哟,离线,有人找我吗?
jyh7081
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:957 积分:8440 威望:0 精华:0 注册:2012/10/3 13:25:00
  发帖心情 Post By:2013/8/12 23:45:00 [显示全部帖子]

只知道是设置列的显示格式,但不知道怎么用,请指教。 

 图片点击可在新窗口打开查看  

 回到顶部
帅哥哟,离线,有人找我吗?
jyh7081
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:957 积分:8440 威望:0 精华:0 注册:2012/10/3 13:25:00
  发帖心情 Post By:2013/8/13 18:14:00 [显示全部帖子]

  在 有点甜、狐爸 代码的基础上,想增加计算股piao开盘第一天的涨幅,改写了一段代码(见下面红色部分),执行代码后没反应,是何原因?生成的单元格格式右靠齐,怎么写代码?

'新增的代码
Dim tname As String = FileSys.GetName(file.SubString(0, file.length - 4))
Dim drs As List(of DataRow) = DataTables(tname).Select("", "时间")
For i As Integer = 1 To drs.Count - 1

 If i = 0 Then
       drs(i)("涨幅") = math.Round((drs(i)("收盘价") - drs(i)("开盘价")) / drs(i)("开盘价") * 100,2)
       End If

    drs(i)("涨幅") = math.Round((drs(i)("收盘价") - drs(i - 1)("收盘价")) / drs(i - 1)("收盘价") * 100,2)
Next
            Next
        End If
    End If
End If
Tables("股piao信息明细表").ResumeRedraw()
e.Form.Close()
msgbox("导入结束")

[此贴子已经被作者于2013-8-13 20:48:29编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
jyh7081
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:957 积分:8440 威望:0 精华:0 注册:2012/10/3 13:25:00
  发帖心情 Post By:2013/8/13 21:37:00 [显示全部帖子]

在 lsy 老师提供的模块中,将“涨幅”按钮代码新增了股piao开盘第一天的涨幅代码,运行通过。楼上的代码为何没反应?
同样是计算“涨幅”,1、drs(i)("涨幅") = math.Round((drs(i)("收盘价") - drs(i - 1)("收盘价")) / drs(i - 1)("收盘价") * 100,2)
                               2、drlist(i)("涨幅") = (drlist(i)("收盘价") - drlist(i - 1)("收盘价")) / drlist(i - 1)("收盘价") * 1%
                        为何不同?

下面是“涨幅”按钮代码:
Dim t As Table = Tables("股piao信息明细表")
t.Sort = "代码,时间"
Dim codes As List (Of String) = DataTables("股piao信息明细表").GetUniqueValues("代码 Is Not Null","代码")
For Each code As String In codes
    Dim drlist As List (Of DataRow) = DataTables("股piao信息明细表").Select("代码 = '" & code & "'")
    For i As Integer = 0 To drlist.Count - 1        
        If i = 0 Then
            drlist(i)("涨幅") = (drlist(i)("收盘价") - drlist(i)("开盘价")) / drlist(i)("开盘价") * 1%   '新增
            'drlist(i)("涨幅") = 0   去除
        Else
            drlist(i)("涨幅") = (drlist(i)("收盘价") - drlist(i - 1)("收盘价")) / drlist(i - 1)("收盘价") * 1%
        End If        
    Next
Next

 回到顶部
总数 20 1 2 下一页