以前我曾询问过如何在数据集中插入一列.我现在有一个类似的问题......即将两列或多列合并为一列.
假设我有以下数据集:
DataSet ds = new DataSet();
ds.Tables.Add(new DataTable());
ds.Tables[0].Columns.Add("id", typeof(int));
ds.Tables[0].Columns.Add("firstname", typeof(string));
ds.Tables[0].Columns.Add("lastname", typeof(string));
Run Code Online (Sandbox Code Playgroud)
我需要将"firstname"和"lastname"列合并到一个名为"name"的列中.
我最好创建一个将两列合并在一起的方法,还是可以用来将多列合并在一起的更通用的方法?
我的想法是创建一个类似于以下的通用方法:
MergeColumns(字符串格式,字符串mergedColumn,DataTable dt,params string [] columnsToMerge)
用户提供如下格式:"{0} {1}"
mergedColumn是新列的名称...但它必须能够与将要合并的列之一相同,因为在我的真实案例中我将"name"和"given_names"合并为"name" ...但是如果我需要将"街道","城市","州","邮政编码"等合并到名为"地址"的列中,我仍然希望能够使用它.
我认为这将使用的方式如下:
MergeColumns("{0} {1}","name",dataTable,"firstname","lastname");
鉴于上述数据集,我希望结果数据集看起来如下:
DataSet ds = new DataSet();
ds.Tables.Add(new DataTable());
ds.Tables[0].Columns.Add("id", typeof(int));
ds.Tables[0].Columns.Add("name", typeof(string));
Run Code Online (Sandbox Code Playgroud)
这看起来像是一种合理的方法吗?这样的方法是否已经存在?我不想重新发明轮子.另外,我是否正在创建一种比我现在实际需要的更多的方法?
我想打印出Typed数据集中的表数以及与每个表关联的字段数以及关键字段{primary,foreign}.如何使用LINQ获取此信息?
我有一个 DevExpress DataGrid,它绑定到 C# 中的 DataSet。我想填充每个数据集行以在第一列中包含一个字符串,在第二列中包含一个复选框。我下面的代码不能像我想要的那样工作,我不知道为什么.....
正如你所看到的,我已经声明了一个数据集,但是当我尝试将一个新的复选框对象传递给第二列时,它只显示复选框的系统名称。
DataSet prodTypeDS = new Dataset();
DataTable prodTypeDT = prodTypeDS.Tables.Add();
prodTypeDT.Columns.Add("MurexID", typeof(string));
prodTypeDT.Columns.Add("Haganise",typeof(CheckBox));
//WHY DOES THIS NOT WORK?
//(Displays "System.Windows.Forms.CheckBox, CheckState: 0")
//Instead of a checkbox.
CheckBox c = new CheckBox();
prodTypeDS.Tables[0].Rows.Add("Test",c);
//This doesn't work either....
prodTypeDS.Tables[0].Rows.Add("Test",c.CheckState);
Run Code Online (Sandbox Code Playgroud)
......我希望这只是因为它是一个 DevExpress 数据网格......
在我的应用程序中,我只使用DBAware组件(除了一些地方).
我有一个场景,我创建一个主数据集(例如客户),详细数据集(例如订单),子目录数据集(例如订单项).通常我允许用户进行更改(数据集处于浏览模式),然后我发布.简单.
无论如何编辑子数据集我想添加一种简单的撤消功能:一个打开一个表单来编辑数据集(即使用db componets,因此对表单的更改将改变数据集),如果用户取消操作我会喜欢在打开表单之前恢复数据集.
现在为了实现这一点,我可以考虑在一个TClientDataSet或类似的组件中制作数据集的副本,但还有其他技术吗?就像Delphi一样可以轻松地创建数据的"快照".使用伪代码:
MySubDetailDataSet.SaveSnapShot;
SubDetailForm.ShowModal;
if ModalResult = mrCancel then MySubDetailDataSet.RestoreSnapShot;
Run Code Online (Sandbox Code Playgroud)
这样的东西可能是"现成的"Delphi组件吗?
顺便说一句,我使用DevArt组件的SDAC,所以如果你知道一种技术只适用于那些组件而不是Delphi标准组件,那么欢迎!
我有一个程序,用于使用 gridview 将值输入到数据库中。gridview 填充了来自 DataSet 的“空”结果,该数据集从我想要的表中查询该数据库。这会用我想要的正确列填充网格(即,具有来自数据库中某个表的空行的网格)。当您填写列时,我会获取数据并手动更新数据库。
我如何使用 gridview 的基本示例:
this.fullUutDataTableAdapter.Fill(this.dalsaUutDataSet.ResultsFullUut);
DataView dv = this.dalsaUutDataSet.ResultsFullUut.DefaultView;
Grid_modify.DataSource = dv;
foreach(DataGridViewRow dr in Grid_modify.Rows)
{
dr.Cells["YieldID"].Value = -1;
}
Run Code Online (Sandbox Code Playgroud)
但是,我希望某些列具有默认值。我曾尝试更改列的默认值,但您无法更改该属性,只能“获取”它。或者,我尝试解析空网格中的行并填充值。这在网格最初加载时工作正常(值显示在适当的位置)。但是,一旦我进入编辑模式,这些值就会清除为零。
接下来,我尝试使用一些 RowEdit 事件并尝试在进入编辑模式时填充值,但是,这会在您进入和离开编辑模式时导致问题。似乎是一种更复杂和凌乱的做事方式,看似必要。
所以问题是,在某些列中使用默认值填充 gridview 的最佳方法是什么?
我更喜欢“最干净”的解决方案。然而,我认识到事情并不总是那样发展......
提前感谢您的帮助!干杯。
我在 Google 和各种论坛上搜索了大型 XML 文件,但除了 1.0 GB 且对我的需求来说太大的 DBLP 之外,没有找到任何东西。我需要 30-50 MB、100-300 MB 和 500 MB 之类的集。有谁知道吗?
ps 不要提出数据生成器,因为我需要真实数据才能用于有意义的查询测试。
如何将数据集分配给现有报告?
我采取了其他方法,然后通常使用它-首先构建RDLC,然后完成数据集,但是现在我不知道如何将数据集分配给我的报告了。在属性窗口中,无论我选择“正文”,“报表”还是“ Tablix”-我找不到任何可以选择数据集的内容。
有一个带有下拉菜单的屏幕(向导),您可以选择数据集,但我无法找到它。任何人都可以帮助再次触发它吗?还是帮助我分配数据集以其他方式报告?
嗨,我想将数据从datagridview保存并加载到xml.我的想法是我可以将我的datagridview保存到xml如何 - >"[date] _ [name] .xml"以后我可以加载这些数据.对于这两个操作,我想使用两个方法 - > Save()和Load()
这是我保存的代码:
private void Save(DataGridView grid)
{
try
{
xmlfile = @"C:\datagrid.xml";
dataset = (DataSet)InputDataGrid.DataSource;
dataset.WriteXml(xmlfile);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Run Code Online (Sandbox Code Playgroud)
我怎么能这样做?
我有一个非常大的数据集:7.9 GB的CSV文件。其中80%作为培训数据,其余20%作为测试数据。当我加载训练数据(6.2 GB)时,我MemoryError处于第80次迭代(第80个文件)。这是我用于加载数据的脚本:
import pandas as pd
import os
col_names = ['duration', 'service', 'src_bytes', 'dest_bytes', 'count', 'same_srv_rate',
'serror_rate', 'srv_serror_rate', 'dst_host_count', 'dst_host_srv_count',
'dst_host_same_src_port_rate', 'dst_host_serror_rate', 'dst_host_srv_serror_rate',
'flag', 'ids_detection', 'malware_detection', 'ashula_detection', 'label', 'src_ip_add',
'src_port_num', 'dst_ip_add', 'dst_port_num', 'start_time', 'protocol']
# create a list to store the filenames
files = []
# create a dataframe to store the contents of CSV files
df = pd.DataFrame()
# get the filenames in the specified PATH
for (dirpath, dirnames, filenames) in os.walk(path):
''' Append to the …Run Code Online (Sandbox Code Playgroud) 对于xx_ent_wiki_smSpaCy的2.0版本的模型,提到了"WikiNER"数据集,其导致文章"从维基百科学习多语言命名实体识别".
是否有任何资源可用于下载此类数据集以重新训练该模型?或维基百科转储处理的脚本?