我有125列的csv文件
指示性125列是: ROLL_NO,SCHOOL_ID,NAME,STANDARD,SOURCE_ID,Q1,Q2,Q3(继续向上)Q120
CSV文件有大约20,0000条记录(针对不同的学校)
我想计算对CSV文件中存在的数据执行一些数学运算。预期的运作是:
目前我打算在数据库中加载此CSV并执行所需的操作;在开始之前我几乎没有问题;
答案 0 :(得分:1)
由于CSV是一个没有索引的纯文本文件,因此对它的任何操作都需要至少一次完整的文件读取。如果你有足够的RAM,你可以将文件读入数组到PHP并在内存中执行操作,如果你连续执行多个操作,这会稍快一点。
但是,如果您计划进行更严格的计算,我建议您将数据加载到带有索引的数据库中,例如MySQL,您可以更快地执行此类操作。
答案 1 :(得分:1)
awk
或cut
,您可以按列拆分。
tbl1.csv将包含column1到column5的数据 tbl2.csv将包含数据column1(ROLL_NO)和第6列到第125列
$ cut -d "," -f1-5 input.csv > tbl1.csv
$ cut -d "," -f1,6-120 input.csv > tbl2.csv
LOAD DATA
我假设您已经了解LOAD DATA
小心逃避','数据。 CSV没有关于转义的标准方法。如果csv只有数字编号,则转义可能不是问题。