小编cra*_*ray的帖子

将CSV文件的第一行更改为全部大写

我有一组csv文件,对于每个文件,第一行包含数据集的列名.某些csv文件具有所有大写列名称,其他csv文件具有所有小写列名称.我的问题是如何更改每个csv文件,以便每个文件的第一行(也就是列名称)显示为每列中的所有大写字符串?

我对它的尝试如下:首先,我手动检查所有文件以查看哪些文件具有大写和小写的列名,然后运行以下命令:

head -1 uppercase.csv > header.csv
#repeated all commands below for all lowercase files individually
sed -i 1d lowercase.csv 
cat header.csv lowercase.csv > lowercase_new.csv
rm lowercase.csv
mv lowercase_new.csv lowercase.csv
Run Code Online (Sandbox Code Playgroud)

我想知道是否有更自动化的方法来执行此操作,而无需手动浏览每个文件.

例子:

Dataset1.csv

a b c
x x x
Run Code Online (Sandbox Code Playgroud)

Dataset2.csv

A B C
y y y
Run Code Online (Sandbox Code Playgroud)

如何使Dataset1.csv如下所示?

A B C
x x x
Run Code Online (Sandbox Code Playgroud)

csv bash awk sed

5
推荐指数
2
解决办法
1060
查看次数

使用以前的记录填写NULLS - Netezza SQL

我在Aginity Workbench上使用Netezza SQL并拥有以下数据:

id           DATE1              DATE2
1            2013-07-27         NULL
2            NULL               NULL
3            NULL               2013-08-02
4            2013-09-10         2013-09-23
5            2013-12-11         NULL
6            NULL               2013-12-19
Run Code Online (Sandbox Code Playgroud)

我需要用DATE1字段中填充的前面值填充DATE1中的所有NULL值.对于DATE2,我需要执行相同的操作,但顺序相反.所以我想要的输出如下:

id           DATE1              DATE2
1            2013-07-27         2013-08-02
2            2013-07-27         2013-08-02
3            2013-07-27         2013-08-02
4            2013-09-10         2013-09-23
5            2013-12-11         2013-12-19
6            2013-12-11         2013-12-19
Run Code Online (Sandbox Code Playgroud)

我只能读取数据.因此创建表或视图是不可能的

hive hql apache-spark

4
推荐指数
1
解决办法
2188
查看次数

标签 统计

apache-spark ×1

awk ×1

bash ×1

csv ×1

hive ×1

hql ×1

sed ×1