GVKun编程网logo

在 Ruby 中将数组输出到 CSV(ruby数组转化为字符串)

10

本文将为您提供关于在Ruby中将数组输出到CSV的详细介绍,我们还将为您解释ruby数组转化为字符串的相关知识,同时,我们还将为您提供关于php–直接从阵列输出到CSV而不保存到CSV文件、PHP-将

本文将为您提供关于在 Ruby 中将数组输出到 CSV的详细介绍,我们还将为您解释ruby数组转化为字符串的相关知识,同时,我们还将为您提供关于php – 直接从阵列输出到CSV而不保存到CSV文件、PHP-将关联数组输出到带有标签/标题的HTML中、Python Pandas:使用整数将数据帧输出到csv、python – 在Ruby中逐步将数组拆分为子数组的实用信息。

本文目录一览:

在 Ruby 中将数组输出到 CSV(ruby数组转化为字符串)

在 Ruby 中将数组输出到 CSV(ruby数组转化为字符串)

使用 Ruby 将 CSV 文件读入数组很容易,但我找不到任何关于如何将数组写入 CSV 文件的好的文档。谁能告诉我该怎么做?

如果这很重要,我正在使用 Ruby 1.9.2。

答案1

小编典典

到一个文件:

require ''csv''CSV.open("myfile.csv", "w") do |csv|  csv << ["row", "of", "CSV", "data"]  csv << ["another", "row"]  # ...end

到一个字符串:

require ''csv''csv_string = CSV.generate do |csv|  csv << ["row", "of", "CSV", "data"]  csv << ["another", "row"]  # ...end

这是有关 CSV 的当前文档:http ://ruby-
doc.org/stdlib/libdoc/csv/rdoc/index.html

php – 直接从阵列输出到CSV而不保存到CSV文件

php – 直接从阵列输出到CSV而不保存到CSV文件

我正在寻找一种简单的方法来获取阵列,将其转换为CSV并让用户能够下载CSV,而无需将CSV保存到服务器.

解决方法:

header("Content-type: application/csv");
header("Content-disposition: attachment; filename=test.csv");
$fp = fopen('PHP://output', 'w');
foreach ($array as $row) {
    fputcsv($fp, $row);
}

见fputcsv()

使用fputcsv的好处是它将为您处理字段的转义和封闭,确保有效,坚固的输出.不幸的是,它无法输出到字符串,所以我写入PHP的输出流.你也可以写’PHP:// memory’,如果你需要在输出之前访问它,那么你可以像文件一样读它.

封套http://www.php.net/manual/en/wrappers.php.php的信息

PHP-将关联数组输出到带有标签/标题的HTML中

PHP-将关联数组输出到带有标签/标题的HTML中

我有一个PHP函数,它从localhost MysqL表返回一行,如下所示:

<?PHP
//include database connection process
require_once("includes/conn.inc.PHP");
//prepare statement
$stmt = $conn->prepare("Select * FROM races WHERE raceID = ?");
$id = 1;
$stmt->bind_param("i", $id);
$stmt->execute();
$result = $stmt->get_result();
$row = $result->fetch_assoc();
?>

我想对该数组进行的操作是将各个字段中的数据输出到其自己的HTML< div>中.或< p>标题表示它们在单独的div中的含义.我目前使用print_row方法,将所有内容合而为一.我想要的所有数据都在那里,但我想将其分离为名称/值段落或div.

//what I currently have
<?PHP
    print_r($row);
?>

有没有办法做到这一点?

提前致谢,

标记

解决方法:

我不太清楚这个问题,但我想我了解您的需求.

使用while来遍历每一行.

while($row = $resultDesc->fetch_assoc())
{
    echo '<p><strong>Description:</strong></p> ';
    echo '<p>'. $row['description'] . '</p>';
}

这不是确切的解决方案,但至少会向您显示路径.

Python Pandas:使用整数将数据帧输出到csv

Python Pandas:使用整数将数据帧输出到csv

我有一个pandas.DataFrame我希望导出到CSV文件的文件。但是,pandas似乎将某些值float而不是int类型写为。我找不到如何更改此行为。

建立数据框:

df = pandas.DataFrame(columns=['a','b','c','d'],index=['x','y','z'],dtype=int)
x = pandas.Series([10,10,10],index=['a',dtype=int)
y = pandas.Series([1,5,2,3],dtype=int)
z = pandas.Series([1,3,4],dtype=int)
df.loc['x']=x; df.loc['y']=y; df.loc['z']=z

查看:

>>> df
    a   b    c   d
x  10  10  NaN  10
y   1   5    2   3
z   1   2    3   4

导出它:

>>> df.to_csv('test.csv',sep='\t',na_rep='0',dtype=int)
>>> for l in open('test.csv'): print l.strip('\n')
        a       b       c       d
x       10.0    10.0    0       10.0
y       1       5       2       3
z       1       2       3       4

为什么十位数有一个零点?

当然,我可以将此函数粘贴到管道中以重新转换整个CSV文件,但似乎没有必要:

def lines_as_integer(path):
    handle = open(path)
    yield handle.next()
    for line in handle:
        line = line.split()
        label = line[0]
        values = map(float,line[1:])
        values = map(int,values)
        yield label + '\t' + '\t'.join(map(str,values)) + '\n'
handle = open(path_table_int,'w')
handle.writelines(lines_as_integer(path_table_float))
handle.close()

python – 在Ruby中逐步将数组拆分为子数组

python – 在Ruby中逐步将数组拆分为子数组

在 Python中,我可以使用“jump-step”对数组进行切片.例:
In [1]: a = [1,2,3,4,5,6,7,8,9] 

In [4]: a[1:7:2] # start from index = 1 to index < 7,with step = 2
Out[4]: [2,6]

Ruby能做到吗?

解决方法

a = [1,9]
a.values_at(*(1...7).step(2)) - [nil]
#=> [2,6]

虽然在上面的例子中 – [nil]部分不是必需的,但它只是用于你的范围超过数组的大小,否则你可能得到这样的东西:

a = [1,9]
a.values_at(*(1..23).step(2))
#=> [2,nil,nil]

今天关于在 Ruby 中将数组输出到 CSVruby数组转化为字符串的介绍到此结束,谢谢您的阅读,有关php – 直接从阵列输出到CSV而不保存到CSV文件、PHP-将关联数组输出到带有标签/标题的HTML中、Python Pandas:使用整数将数据帧输出到csv、python – 在Ruby中逐步将数组拆分为子数组等更多相关知识的信息可以在本站进行查询。

本文标签: