![](/img/trans.png)
[英]To read a field with comma and quotes in csv where comma is delimiter - pyspark
[英]CSV file with comma delimiter and quotes, but not on every line
讀取csv文件時遇到問題,該文件用逗號分隔所有內容,但csv文件中的第一個不包含引號。 例:
Symbol,"Name","LastSale","MarketCap","IPOyear","Sector","industry","Summary Quote",
嘗試閱讀的代碼如下:
from ystockquote import *
import csv
with open('companylist.csv') as csvfile:
readCSV = csv.reader(csvfile, delimiter=",", quotechar='"', quoting=csv.QUOTE_MINIMAL)
for row in readCSV:
print(row[0])
我得到的是以下內容:
Symbol,"Name","LastSale","MarketCap","IPOyear","Sector","industry","Summary Quote",;
但是,我只想從此列表中獲取所有符號。 有人知道如何執行此操作嗎?
編輯
更多數據:
符號,“名稱”,“最后出售”,“市值”,“ IPO年”,“部門”,“行業”,“摘要報價”,
PIH,“ 1347 Property Insurance Holdings,Inc。”,“ 7.505”,“ $ 45.23M”,“ 2014”,“ Finance”,“ Property-Casualty Insurers”,“ http://www.nasdaq.com/symbol/pih ”;
FLWS,“ 1-800 FLOWERS.COM,Inc。”,“ 9.59”,“ $ 623.46M”,“ 1999”,“消費者服務”,“其他專賣店”,“ http://www.nasdaq.com/symbol / flws “ ,;
所以我的預期輸出將是:
Symbol
PIH
FLWS
如果csv.reader以單獨的列表的形式讀取我的文件,並且在每個列表中的所有項目(以逗號分隔)都是它們的單獨值,則會發生這種情況。 (例如,符號將是[0]的值,“名稱”將是[1]的值,依此類推)
我希望這能弄清楚我在尋找什么
找到了簡單的出路:
替換了所有
"
在我的csv文件中沒有任何內容的情況下,這樣做使得csv.reader可以再次正常讀取csv文件。
如果print(row[0])
給您一個列表,則可能是因為csv文件的每一行都以列表的形式被讀取。
嘗試print(row[0][0])
也許?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.