我试图将一系列元组写入csv,但正常的File.WriteAllLines被一系列元组重载.
因此,我试图将我的元组变成一系列字符串.
这是我的代码: -
open System;;
open Microsoft.FSharp.Reflection;;
let tupleToString (t: string * float) =
if FSharpType.IsTuple(t.GetType())
then String.Format("{0},{1}", fst t, snd t)
else "";;
let testTuple = ("monkey", 15.168);;
tupleToString(testTuple);;
let testSeqTuple = [("monkey", 15.168); ("donkey", 12.980)];;
let allIsStrings (t:seq<string * float>) = Seq.collect tupleToString t;;
allIsStrings(testSeqTuple);;
Run Code Online (Sandbox Code Playgroud)
当我在一个元组上使用"tupleToString"时,结果就好了.
然而,allIsStrings的Seq.collect部分返回按字符分解的元组.
我也试过Seq.choose和Seq.fold,但这些只是抛出错误.
任何人都可以建议我应该使用序列模块中的哪些函数 - 或者建议使用可以在元组上工作的File.WriteAllLines的替代方法?
我正在使用最新的Entity Framework和DBContext.我有一个结果集,我想转换为逗号分隔值.我在VB DataTable中使用DataTables做了类似的事情来进行CSV提取.我有QuoteName方法工作.我还得到了使用foreach工作的GetCSV方法的衍生物.问题是它比DataTable的可比代码要慢得多.所以我希望有人会有一些建议.
public static string GetCSV(this IQueryable entity)
{
if (entity == null)
{
throw new ArgumentNullException("entity");
}
Type T = entity.ElementType;
var props = T.GetProperties(BindingFlags.Public | BindingFlags.Instance);
string s = string.Empty;
int iCols = props.Count();
try
{
s += string.Join(",", (from int ii in Enumerable.Range(0, iCols)
select props[ii].Name.QuoteName("[]")).ToArray());
s += Environment.NewLine;
foreach (var dr in entity)
{
s += string.Join(",", (from int ii in Enumerable.Range(0, iCols)
select
props[ii].GetValue(dr)
.ToString()
.QuoteName("\"\"", ",")).ToArray());
s += Environment.NewLine;
} …Run Code Online (Sandbox Code Playgroud) 我试图将ms sql server 2008中存在的表导出到我系统上的文本文件中.我在sql server查询窗口中编写以下命令
SELECT *
FROM [AdventureWorks].[Person].[AddressType]
INTO OUTFILE 'C:/filename.csv'
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';
Run Code Online (Sandbox Code Playgroud)
现在每当我写这个命令时,sql帮助都会给我错误 incorrect syntax near 'INTO'
然后我尝试从关键字进行交换,如下所示
SELECT *
INTO OUTFILE 'C:/filename.csv'
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
FROM [AdventureWorks].[Person].[AddressType] ;
Run Code Online (Sandbox Code Playgroud)
现在它给了我错误 incorrect syntax near 'C:/filename.csv'
请帮我解决这个问题.我无法删除这些错误并获得一个正常工作的SQL
如何使用php将mysql数据表搜索查询导出到csv?
听到是查询
if ($_REQUEST["startfrom"]<>'' and $_REQUEST["end"]<>'') {
$sql = "SELECT ECRNo,SalesDate,TimeSold,AmountDue,OutletName,ProductCode,Category,MealType,SUM(Quantity) AS Quantity1,SUM(NetPrice) AS NetPrice1 FROM ".$SETTINGS["data_table"]." WHERE SalesDate BETWEEN '".mysql_real_escape_string($_REQUEST["startfrom"])."'And'".mysql_real_escape_string($_REQUEST["end"])."'".$search_OutletName.$search_Category.$search_ProductCode.$search_groupby;
} else if ($_REQUEST["startfrom"]<>'') {
$sql = "SELECT ECRNo,SalesDate,TimeSold,AmountDue,SalesDate,OutletName,ProductCode,Category,MealType,SUM(Quantity) AS Quantity1,SUM(NetPrice) AS NetPrice1 FROM ".$SETTINGS["data_table"]." WHERE SalesDate >= '".mysql_real_escape_string($_REQUEST["startfrom"])."'".$search_OutletName.$search_Category.$search_ProductCode.$search_groupby;
} else if ($_REQUEST["end"]<>'') {
$sql = "SELECT ECRNo,SalesDate,TimeSold,SalesDate,AmountDue,OutletName,ProductCode,Category,MealType,SUM(Quantity) AS Quantity1,SUM(NetPrice) AS NetPrice1 FROM ".$SETTINGS["data_table"]." WHERE SalesDate <= '".mysql_real_escape_string($_REQUEST["end"])."'".$search_OutletName.$search_Category.$search_ProductCode.$search_groupby;
}else {
$sql = "SELECT ECRNo,SalesDate,TimeSold,SalesDate,AmountDue,OutletName,ProductCode,Category,MealType,SUM(Quantity) AS Quantity1,SUM(NetPrice) AS NetPrice1 FROM ".$SETTINGS["data_table"]." WHERE ECRNo>0 ".$search_OutletName.$search_Category.$search_ProductCode.$search_groupby;
}
Run Code Online (Sandbox Code Playgroud)
我如何导出其查询结果?
我下载了格式为.ttl的rdf文件 - 我是RDF的新手,我正在尝试查看是否可以使用某种简单的txt/csv格式获取数据.有谁知道如何做到这一点?
我一直在和火炬一起工作.我目前的程序需要导出包含简化特征矩阵的Tensor.我尝试过以下操作:
torch.save('t.csv',torch.Tensor({{1,2},{3,4}}),'ascii')
Run Code Online (Sandbox Code Playgroud)
输出是:
4
1
3
V 1
18
torch.DoubleTensor
2
2 3
3 1
1
4
2
3
V 1
19
torch.DoubleStorage
6
1 2 3 4 5 6
Run Code Online (Sandbox Code Playgroud)
预期产量:
1, 2, 3
4, 5, 6
Run Code Online (Sandbox Code Playgroud)
我希望有人知道如何做到这一点?
使用此代码,我创建了CSV导出文件:
foreach ($data_for_export as $row) {
$data = [];
array_push($data, $row->product_id);
array_push($data, $row->product_name);
array_push($data, $row->product_code);
array_push($data, $row->text);
fputcsv($file, $data);
}
fclose($file);
Run Code Online (Sandbox Code Playgroud)
示例输出是:
2131,"Toys set 35", TSSET35, "Lorem ipsum dolor sit amet"
Run Code Online (Sandbox Code Playgroud)
我尝试过:
preg_replace("/([a-z0-9]+)/i", '"$1"', $row->product_id)
'"'.$row->product_id.'"'
Run Code Online (Sandbox Code Playgroud)
使用"preg_replace",我会得到更多的引号,然后需要...
我需要所有出口物品的报价,我该怎么做?
我正在使用自定义函数基本上在8TB驱动器(数千个文件)上执行DIR命令(递归文件列表).
我的第一次迭代是:
$results = $PATHS | % {Get-FolderItem -Path "$($_)" } | Select Name,DirectoryName,Length,LastWriteTime
$results | Export-CVS -Path $csvfile -Force -Encoding UTF8 -NoTypeInformation -Delimiter "|"
Run Code Online (Sandbox Code Playgroud)
这导致了一个巨大的$ results变量,并通过强制PowerShell进程将系统降低到爬行速度,以便在处理过程中使用99%-100%的CPU.
我决定使用管道的功能直接写入CSV文件(可能释放内存),而不是保存到中间变量,并提出了这个:
$PATHS | % {Get-FolderItem -Path "$($_)" } | Select Name,DirectoryName,Length,LastWriteTime | ConvertTo-CSV -NoTypeInformation -Delimiter "|" | Out-File -FilePath $csvfile -Force -Encoding UTF8
Run Code Online (Sandbox Code Playgroud)
这似乎工作正常(CSV文件正在增长......并且CPU似乎稳定)但是当CSV文件大小达到~200MB时突然停止,并且控制台的错误是" 管道已经停止 ".
我不确定CSV文件大小与错误消息有什么关系,但我无法使用任何一种方法处理这个大型目录!有关如何允许此过程成功完成的任何建议?
问题:
我有数据框的数据框,purrr并且想将每个嵌套的数据框写入CSV。
> df
# A tibble: 3 × 2
dataset data
<chr> <list>
1 aab <tibble [681 × 60]>
2 aae <tibble [1,486 × 173]>
3 acm <tibble [3,496 × 139]>
Run Code Online (Sandbox Code Playgroud)
也就是说,我要从上面获取3个CSV:在“数据”下的每个小标题一个CSV。
我更喜欢tidyverse函数lapply或类似函数。
潜在的解决方案
我认为一定是使用map()或类似功能的东西:
df %>%
map(~write_csv(data, file=[how to get filename from 'dataset' column?))
Run Code Online (Sandbox Code Playgroud) 我从数据库加载一个DataFrame,并有一个dict列,如下所示:
id some_value ... coordinates
15 34.7 {'type': 'Point', 'coordinates': [-3.2, 37.0]}
Run Code Online (Sandbox Code Playgroud)
但是,当我使用pd.to_csv()将我的DataFrame保存到磁盘然后重新读取它时,包含坐标的列不是dict,而是字符串:
id some_value ... coordinates
15 34.7 "{'type': 'Point', 'coordinates': [-3.2, 37.0]}"
Run Code Online (Sandbox Code Playgroud)
我如何告诉Pandas将此专栏作为dict读取,或者如何将此列转换回dict?