Questions tagged «csv»

逗号分隔值或字符分隔值(CSV)是一种标准的“平面文件数据库”格式,用于以纯文本格式存储表格数据,由可选的标题行组成,该标题行列出了用逗号或制表符或其他分隔符分隔的表格字段,然后是一行或多行(用换行符分隔),这些行将表记录表示为值的定界列表。换行符和分隔符可以出现在(带引号)字段中。

5
Python Pandas read_csv跳过行但保留标题
我在弄清楚如何跳过csv文件中的n行但保留标题为1行时遇到了麻烦。 我想做的是迭代但保留第一行的标题。 skiprows将标题设置为跳过的行之后的第一行。最好的方法是什么? data = pd.read_csv('test.csv', sep='|', header=0, skiprows=10, nrows=10)
76 python  csv  pandas 

2
如何使用Postgres中CSV文件中的值更新所选行?
我正在使用Postgres,并想进行一个大型更新查询,该查询将从CSV文件中提取,可以说我有一个表,该表具有(id, banana, apple)。 我想运行一个更新来更改香蕉而不是苹果,每个新的香蕉及其ID都将保存在CSV文件中。 我尝试查看Postgres网站,但这些示例使我丧命。

3
熊猫数据框read_csv上的不良数据
我想读取一个非常大的csv(无法在excel中打开并轻松编辑),但是在第100,000行左右的某个地方,有一行带有一个额外的列,导致程序崩溃。该行是错误的,因此我需要一种方法来忽略它是多余的列这一事实。大约有50列,因此对标题进行硬编码和使用名称或usecols是不可取的。我可能还会在其他csv中遇到此问题,并希望有一个通用的解决方案。不幸的是,我在read_csv中找不到任何东西。代码很简单: def loadCSV(filePath): dataframe = pd.read_csv(filePath, index_col=False, encoding='iso-8859-1', nrows=1000) datakeys = dataframe.keys(); return dataframe, datakeys
76 python  csv  pandas 

4
对于不规则的分隔符,如何使pandas read_csv中的分隔符更灵活wrt空格?
我需要通过使用read_csv方法从文件中读取数据来创建数据框。但是,分隔符不是很规则:一些列由制表符(\t)分隔,另一些则由空格分隔。此外,某些列可以用2或3个或更多的空格隔开,甚至可以用空格和制表符的组合分隔(例如3个空格,两个制表符然后是1个空格)。 有没有办法告诉熊猫正确对待这些文件? 顺便说一句,如果我使用Python,则不会出现此问题。我用: for line in file(file_name): fld = line.split() 而且效果很好。不管字段之间是否有2或3个空格。即使空格和制表符的组合也不会引起任何问题。熊猫可以做同样的事情吗?



4
使用XSLT将XML转换为CSV
我有以下XML文档: <projects> <project> <name>Shockwave</name> <language>Ruby</language> <owner>Brian May</owner> <state>New</state> <startDate>31/10/2008 0:00:00</startDate> </project> <project> <name>Other</name> <language>Erlang</language> <owner>Takashi Miike</owner> <state> Canceled </state> <startDate>07/11/2008 0:00:00</startDate> </project> ... 我想从转换(XSLT)结果中获得以下信息: Shockwave,Ruby,Brian May,New,31/10/2008 0:00:00 Other,Erlang,Takashi Miike,Cancelled,07/11/2008 0:00:00 有人知道XSLT可以实现吗?我正在使用.net以防万一。
75 xml  xslt  csv 

2
IndexError:数组索引过多
我知道有很多这样的线程,但是它们都是用于非常简单的情况(例如3x3矩阵)之类的,解决方案甚至还没有开始应用于我的情况。因此,我尝试绘制G与l1的关系图(这不是11,而是L1)。数据在我从excel文件加载的文件中。excel文件为14x250,因此有14个参数,每个参数包含250个数据点。我有另一个用户(向休·博斯韦尔大喊大叫!)帮助我解决代码中的错误,但现在又出现了另一个错误。 所以这是有问题的代码: # format for CSV file: header = ['l1', 'l2', 'l3', 'l4', 'l5', 'EI', 'S', 'P_right', 'P1_0', 'P3_0', 'w_left', 'w_right', 'G_left', 'G_right'] def loadfile(filename, skip=None, *args): skip = set(skip or []) with open(filename, *args) as f: cr = csv.reader(f, quoting=csv.QUOTE_NONNUMERIC) return np.array(row for i,row in enumerate(cr) if i not …


9
将表从数据库导出到CSV文件
我想:csv不使用sql Server导入导出向导将表从sql server数据库导出到逗号分隔文件 我想使用查询来做,因为我想在自动化中使用查询 可能吗?我搜索了该文件,却找不到一个好的答案




6
Python:Pandas根据字符串长度过滤字符串数据
我喜欢过滤掉字符串长度不等于10的数据。 如果我尝试过滤掉列A或B的字符串长度不等于10的任何行,则尝试这样做。 df=pd.read_csv('filex.csv') df.A=df.A.apply(lambda x: x if len(x)== 10 else np.nan) df.B=df.B.apply(lambda x: x if len(x)== 10 else np.nan) df=df.dropna(subset=['A','B'], how='any') 这工作缓慢,但正在工作。 但是,当A中的数据不是字符串而是数字(在read_csv读取输入文件时解释为数字)时,有时会产生错误。 File "<stdin>", line 1, in <lambda> TypeError: object of type 'float' has no len() 我相信应该有更高效,更优雅的代码来代替。 根据下面的答案和评论,我找到的最简单的解决方案是: df=df[df.A.apply(lambda x: len(str(x))==10] df=df[df.B.apply(lambda x: len(str(x))==10] 要么 df=df[(df.A.apply(lambda x: len(str(x))==10) & …
72 python  string  pandas  csv  filter 

4
Python:在csv.DictReader中跳过标有#的注释行
用csv.DictReader处理CSV文件很棒-但是我有带注释行的CSV文件(例如,在行的开头用哈希表示): #步长= 1.61853 val0,val1,val2,杂交,温度,smattr 0.206895,0.797923,0.202077,0.631199,0.368801,0.311052,0.688948,0.597237,0.402763 -169.32,1,1.61853,2.04069e-92,1,0.000906546,0.999093,0.241356,0.758644,0.202382 #改编完成 csv模块不包含任何跳过此类行的方法。 我可以轻松地做些骇人听闻的事情,但是我想有一种将csv.DicReader包装在其他迭代器对象周围的好方法,该对象会进行预处理以丢弃行。
71 python  csv  comments 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.