Python 使用CSV文件的最小学习曲线语言

Python 使用CSV文件的最小学习曲线语言,python,excel,vba,csv,Python,Excel,Vba,Csv,VBA不再为我切割它了。我有很多巨大的Excel文件,我需要对它们进行大量计算,并将它们分解为其他Excel/CSV文件 我需要一种语言,我可以在未来几天内学会做我需要的事情,因为这是一种紧急情况。有人建议我使用python,但我想与您确认一下是否还有其他东西可以快速、轻松地处理CSV文件 你需要做什么样的计算?也许是另一种选择 编辑:仅给出几个基本示例 # Basic usage data <- read.csv("myfile.csv") # Pipe-separated value

VBA不再为我切割它了。我有很多巨大的Excel文件,我需要对它们进行大量计算,并将它们分解为其他Excel/CSV文件


我需要一种语言,我可以在未来几天内学会做我需要的事情,因为这是一种紧急情况。有人建议我使用python,但我想与您确认一下是否还有其他东西可以快速、轻松地处理CSV文件

你需要做什么样的计算?也许是另一种选择

编辑:仅给出几个基本示例

# Basic usage
data <- read.csv("myfile.csv")

# Pipe-separated values
data <- read.csv("myfile.csv", sep="|")

# File with header (columns will be named as header) 
data <- read.csv("myfile.csv", header=TRUE)

# Skip the first 5 lines of the file
data <- read.csv("myfile.csv", skip=5)

# Read only 100 lines
data <- read.csv("myfile.csv", nrows=100)
#基本用法

dataPython确实有一个很小的学习曲线,并且可以很好地处理csv文件

Perl对于文本脚本语言来说效率惊人。org有大量用于处理CSV数据的模块。我还使用另一个Perl模块编写了XLS格式的数据。如果您能够使用VBA,您当然可以学习Perl(Perl的基础知识很容易,尽管您或其他人编写简洁而神秘的代码同样容易)。

Python是一个很好的选择。
csv
模块使读取和写入csv文件变得简单(即使是微软的,呃,“特殊”版本),Python语法也很容易掌握


如果您对Perl有新的认识,我实际上建议您不要使用Perl。尽管Perl功能强大且速度快,但它往往神秘到让新手无法理解的地步。

PHP有几个易于使用的csv函数:

这取决于您要对文件执行的操作

Python的学习曲线没有R的陡峭。但是,R有一系列内置函数,非常适合轻松地操作.csv文件,特别是出于统计目的


编辑:我建议仅出于此目的,R优于Python,因为基本操作(读取文件、删除行、删除列等)用R编写要比用Python编写快一些。

这项工作有很多工具,但是的,Python可能是目前最好的。有一个处理csv文件的特殊模块。查看官方信息。

PowerShell已内置

语法非常难看,但它的设计对管理员比程序员更有用——所以谁知道呢,你可能会喜欢它


无论好坏,它都应该是一种快速启动的语言。

你知道VBA吗?为什么不是Visual Basic 2008/2010,或者可能是C#?我相信像python和ruby这样的语言对于这项工作来说会相对容易一些,但是你已经习惯了用“.NET”的方式做事,所以继续使用它们而不是仅仅为了这项工作而学习一个全新的东西是有意义的

使用C#:


  • 我想试试。如果您运行的是windows,您可以通过获得awk。这可能不是任何人的流行语言,但由于CSV文件是面向行的,并且分为多个字段,因此处理它们几乎是的完美应用。它是为处理可拆分为字段的面向行的文本数据而构建的

    人们将要推荐的大多数其他语言将更加通用,因此其中还有很多语言不一定适用于处理面向行的文本数据。

    你说你有“excel文件,我需要对这些文件进行大量计算,并将它们分解为其他excel/csv文件”但到目前为止,所有答案都只涉及csv


    Python有一个csv读/写模块,正如其他人提到的。还有第三方模块
    xlrd
    (读取)和
    xlwt
    (写入)XLS文件的模块。请参阅。

    我很惊讶没有人建议使用它;它非常适合将文件合并和导入Excel,可以很好地进行列计算,并且内置了一个很好的图形编辑器。适用于CSV和Excel文件,也适用于SQL数据库和您期望的大多数其他内容。我设法获得了一些基本的清理和格式设置在一天内完成并运行,也许几天内就可以开始编写自己的函数(脱离GUI)


    因为它只做数据库的事情,所以必须学习(实际的语言叫做“M”)

    不需要密集型,只需要能够处理大型文件和记录日志,还需要能够创建csv文件fast@I__:那么我会说R是一个很好的选择。读取csv文件只是一个
    read.csv
    callaway…我自己从来没有使用过这种语言,但仔细看了10分钟,它确实看起来像是d使处理csv变得容易。你需要对数据进行子集处理吗?如果需要,R将比Python更易于操作,因为它的子集函数内置在基础语言中。根据我的经验,将Excel数据保存为以制表符分隔的数据而不是csv可以省去很多麻烦。解析变得很容易,因为你所拥有的一切要做的是按“新行”拆分文件“字符,并按制表符拆分行。没有引号或撇号可以处理。如果您将Excel工作表中的数据复制/粘贴到文本编辑器中,制表符分隔符也是本机格式。@DanM:您的经验似乎非常有限。执行“另存为文本(制表符分隔)”时,Excel 2003和Excel 2007的行为如下:如果字段包含任何逗号制表符或换行符,则该字段将用引号括起来。如果一个字段包含任何引号,则每个引号都会加倍,然后整个字段都用引号括起来。换句话说,与CSV非常相似。@John Machin,唉,你说得对。我已经有一段时间没有使用分隔文本文件了,我忘记了需要使用一种变通方法来避免所有额外的引用:如果您获取一系列单元格并将它们粘贴到文本编辑器中,它将不会引用任何内容,除非您有制表符或回车符
    var csvlines = File.ReadAllLines("file.csv");
    
    var query = from csvline in csvlines
                let data = csvline.Split(',')
                select new
                {
                    ID = data[0],
                    FirstName = data[1],
                    LastName = data[2],
                    Email = data[3]
                };