zoukankan      html  css  js  c++  java
  • DataTable转置

    转置函数,ATable转置为BTable,再次转置将恢复为ATable

    static DataTable GetTransposeDataTable(DataTable sourceDataTable)
            {
                DataTable newDataTable = new DataTable();
                for (int i = 0; i < sourceDataTable.Rows.Count; i++)
                {
                    newDataTable.Columns.Add("Column" + i, typeof(string));
                }
                foreach (DataColumn dc in sourceDataTable.Columns)
                {
                    DataRow drNew = newDataTable.NewRow();
                    for (int i = 0; i < sourceDataTable.Rows.Count; i++)
                    {
                        drNew[i] = sourceDataTable.Rows[i][dc].ToString();
                    }
                    newDataTable.Rows.Add(drNew);
                }
                return newDataTable;
            }

    测试

    源数据表格式:

       A   A   A   A   ?

       A   B   C   D   ?

       B   B   B   B   ?

       A   B   C   D   ?

       C   C   D   D   ?

       A   D   A   B   ?

       D   D   C   A   ?

       C   D   C   D   ?

       A   B   C   D   ?

       A   B   C   D   ?

    转置完成后的数据表格式:
       A   A   B   A   C   A   D   C   A   A

       A   B   B   B   C   D   D   D   B   B

       A   C   B   C   D   A   C   C   C   C

       A   D   B   D   D   B   A   D   D   D

       ?   ?   ?   ?   ?   ?   ?   ?   ?   ?

    再次转置后数据表格式:
       A   A   A   A   ?

       A   B   C   D   ?

       B   B   B   B   ?

       A   B   C   D   ?

       C   C   D   D   ?

       A   D   A   B   ?

       D   D   C   A   ?

       C   D   C   D   ?

       A   B   C   D   ?

       A   B   C   D   ?

  • 相关阅读:
    mysql远程登录
    cmd中不能使用中文输入法解决方法
    dedecms sphinx 配置
    Docky需要混合窗口管理器才能工作,请启用混合窗口管理器后重新启动Docky.
    PHPCGI 进程 CPU 100% 与 file_get_contents 函数的关系
    MySQL MyISAM索引类型分析和优化
    ubuntu配置jdk7.0过程
    基于角色的用户权限设计的问题,大家探讨下
    工厂支持多数据库开发的三层结构模式随笔(一)
    分页利器 AspNetPager常用属性
  • 原文地址:https://www.cnblogs.com/jeff151013/p/10593822.html
Copyright © 2011-2022 走看看