คำถามติดแท็ก csv

Comma-Separated Values ​​หรือ Character-Separated Values ​​(CSV) เป็นรูปแบบ "ฐานข้อมูลไฟล์แฟลต" มาตรฐานสำหรับการจัดเก็บข้อมูลแบบตารางในข้อความธรรมดาประกอบด้วยแถวส่วนหัวทางเลือกซึ่งแสดงรายการเขตข้อมูลตารางที่คั่นด้วยเครื่องหมายจุลภาคหรือแท็บหรืออักขระตัวคั่นอื่น ๆ ตามด้วยหนึ่งแถวหรือมากกว่านั้น (คั่นด้วยการขึ้นบรรทัดใหม่) แทนระเบียนตารางเป็นรายการที่คั่นด้วยค่า การขึ้นบรรทัดใหม่และอักขระตัวคั่นสามารถปรากฏขึ้นภายในฟิลด์

18
การเปลี่ยนสตริงหลายบรรทัดเป็นคั่นด้วยจุลภาคเดียว
สมมติว่าฉันมีสตริงต่อไปนี้: something1: +12.0 (some unnecessary trailing data (this must go)) something2: +15.5 (some more unnecessary trailing data) something4: +9.0 (some other unnecessary data) something1: +13.5 (blah blah blah) ฉันจะเปลี่ยนมันให้เป็นแบบง่ายๆได้อย่างไร +12.0,+15.5,+9.0,+13.5 ทุบตี?
102 string  bash  shell  csv 

3
ทำไม csvwriter.writerow () จึงใส่เครื่องหมายจุลภาคหลังอักขระแต่ละตัว
รหัสนี้จะเปิด url และ/namesต่อท้ายท้ายและเปิดหน้าและพิมพ์สตริงไปที่test1.csv: import urllib2 import re import csv url = ("http://www.example.com") bios = [u'/name1', u'/name2', u'/name3'] csvwriter = csv.writer(open("/test1.csv", "a")) for l in bios: OpenThisLink = url + l response = urllib2.urlopen(OpenThisLink) html = response.read() item = re.search('(JD)(.*?)(\d+)', html) if item: JD = item.group() csvwriter.writerow(JD) else: NoJD = "NoJD" …
100 python  csv 

10
วิธีการแปลงไฟล์ CSV เป็น JSON หลายบรรทัด
นี่คือรหัสของฉันสิ่งง่ายๆจริงๆ ... import csv import json csvfile = open('file.csv', 'r') jsonfile = open('file.json', 'w') fieldnames = ("FirstName","LastName","IDNumber","Message") reader = csv.DictReader( csvfile, fieldnames) out = json.dumps( [ row for row in reader ] ) jsonfile.write(out) ประกาศชื่อฟิลด์บางฟิลด์ผู้อ่านใช้ CSV เพื่ออ่านไฟล์และชื่อที่ยื่นเพื่อดัมพ์ไฟล์เป็นรูปแบบ JSON นี่คือปัญหา ... แต่ละระเบียนในไฟล์ CSV อยู่คนละแถวกัน ฉันต้องการให้เอาต์พุต JSON เป็นแบบเดียวกัน ปัญหาคือมันทิ้งมันทั้งหมดลงบนเส้นยักษ์เส้นยาว ฉันได้ลองใช้บางอย่างเช่นfor line in …
100 python  json  csv 

6
ข้ามแถวระหว่างการนำเข้า csv แพนด้า
ฉันกำลังพยายามนำเข้าไฟล์. csv โดยใช้pandas.read_csv()แต่ฉันไม่ต้องการนำเข้าแถวที่ 2 ของไฟล์ข้อมูล (แถวที่มีดัชนี = 1 สำหรับการสร้างดัชนี 0) ฉันไม่เห็นวิธีที่จะไม่นำเข้าเนื่องจากอาร์กิวเมนต์ที่ใช้กับคำสั่งนั้นดูคลุมเครือ: จากเว็บไซต์แพนด้า: skiprows : list-like หรือ integer หมายเลขแถวที่จะข้าม (ดัชนี 0) หรือจำนวนแถวที่จะข้าม (int) ที่จุดเริ่มต้นของไฟล์ " ถ้าฉันใส่skiprows=1อาร์กิวเมนต์จะรู้ได้อย่างไรว่าจะข้ามแถวแรกหรือข้ามแถวด้วยดัชนี 1
99 python  csv  pandas 

5
pandas read_csv และกรองคอลัมน์ด้วย usecols
ฉันมีไฟล์ csv ที่เข้ามาไม่ถูกต้องpandas.read_csvเมื่อฉันกรองคอลัมน์ด้วยusecolsและใช้ดัชนีหลายรายการ import pandas as pd csv = r"""dummy,date,loc,x bar,20090101,a,1 bar,20090102,a,3 bar,20090103,a,5 bar,20090101,b,1 bar,20090102,b,3 bar,20090103,b,5""" f = open('foo.csv', 'w') f.write(csv) f.close() df1 = pd.read_csv('foo.csv', header=0, names=["dummy", "date", "loc", "x"], index_col=["date", "loc"], usecols=["dummy", "date", "loc", "x"], parse_dates=["date"]) print df1 # Ignore the dummy columns df2 = pd.read_csv('foo.csv', index_col=["date", "loc"], usecols=["date", …

9
นำเข้าไฟล์ CSV เป็น DataFrame แพนด้า
วิธี Python ในการอ่านไฟล์ CSV ในDataFrame ของแพนด้าคืออะไร (ซึ่งฉันสามารถใช้สำหรับการดำเนินการทางสถิติสามารถมีคอลัมน์ที่พิมพ์ต่างกันได้ ฯลฯ ) ไฟล์ CSV ของฉัน"value.txt"มีเนื้อหาดังต่อไปนี้: Date,"price","factor_1","factor_2" 2012-06-11,1600.20,1.255,1.548 2012-06-12,1610.02,1.258,1.554 2012-06-13,1618.07,1.249,1.552 2012-06-14,1624.40,1.253,1.556 2012-06-15,1626.15,1.258,1.552 2012-06-16,1626.15,1.263,1.558 2012-06-17,1626.15,1.264,1.572 ใน R เราจะอ่านไฟล์นี้โดยใช้: price <- read.csv("value.txt") และจะส่งคืน R data.frame: > price <- read.csv("value.txt") > price Date price factor_1 factor_2 1 2012-06-11 1600.20 1.255 1.548 2 2012-06-12 1610.02 1.258 1.554 3 …
98 python  pandas  csv  dataframe 

6
ชุดย่อยของแถวที่มีค่า NA (ไม่มี) ในคอลัมน์ที่เลือกของกรอบข้อมูล
เรามีกรอบข้อมูลจากไฟล์ CSV กรอบข้อมูลDFมีคอลัมน์ที่มีค่าที่สังเกตได้และคอลัมน์ ( VaR2) ที่มีวันที่ที่ทำการวัด หากไม่ได้บันทึกวันที่ไว้ไฟล์ CSV จะมีค่าNAสำหรับข้อมูลที่ขาดหายไป Var1 Var2 10 2010/01/01 20 NA 30 2010/03/01 เราต้องการใช้คำสั่งย่อยเพื่อกำหนดกรอบข้อมูลใหม่new_DFเพื่อให้มีเฉพาะแถวที่มีNA'ค่าจากคอลัมน์ ( VaR2) ในตัวอย่างที่ระบุจะมีเฉพาะแถวที่ 2 DFเท่านั้น คำสั่ง new_DF<-subset(DF,DF$Var2=="NA") ไม่ทำงานเฟรมข้อมูลผลลัพธ์ไม่มีรายการแถว หากในไฟล์ CSV เดิมราคาNAจะมีการแลกเปลี่ยนกับ คำสั่งเดียวกันผลิตผลลัพธ์ที่ต้องการ:NULLnew_DF<-subset(DF,DF$Var2=="NULL") ฉันจะทำให้วิธีนี้ใช้งานได้อย่างไรหากสำหรับสตริงอักขระมีการระบุค่าNAไว้ในไฟล์ CSV ดั้งเดิม
97 r  csv  dataframe  subset  na 

13
นำเข้า CSV ไปยังตาราง mysql
วิธีที่ดีที่สุด / เร็วที่สุดในการอัปโหลดไฟล์ csv ไปยังตาราง mysql คืออะไร ฉันต้องการให้ใช้ข้อมูลแถวแรกเป็นชื่อคอลัมน์ พบสิ่งนี้: วิธีการนำเข้าไฟล์ CSV ไปยังตาราง MySQL แต่คำตอบเดียวคือใช้ GUI ไม่ใช่เชลล์?

4
จัดเรียงไฟล์ CSV ตามลำดับความสำคัญของคอลัมน์โดยใช้คำสั่ง "sort"
ฉันมีไฟล์ csv และต้องการจัดเรียงตามลำดับความสำคัญของคอลัมน์เช่น "เรียงตาม" ตัวอย่างเช่น: 3;1;2 1;3;2 1;2;3 2;3;1 2;1;3 3;2;1 หากสถานการณ์นี้เป็นผลมาจาก "เลือก" "ลำดับตาม" จะเป็นดังนี้: เรียงลำดับตามคอลัมน์ 2 คอลัมน์ 1 คอลัมน์ 3 ผลลัพธ์จะเป็น: 2;1;3 3;1;2 1;2;3 3;2;1 1;3;2 2;3;1 ฉันต้องการทราบวิธีรับผลลัพธ์เดียวกันนี้โดยใช้คำสั่ง "sort" ใน Unix

9
การอ่านไฟล์ UTF8 CSV ด้วย Python
ฉันกำลังพยายามอ่านไฟล์ CSV ที่มีอักขระเน้นเสียงด้วย Python (เฉพาะอักษรฝรั่งเศสและ / หรือสเปน) จากเอกสาร Python 2.5 สำหรับ csvreader ( http://docs.python.org/library/csv.html ) ฉันคิดรหัสต่อไปนี้เพื่ออ่านไฟล์ CSV เนื่องจาก csvreader รองรับเฉพาะ ASCII def unicode_csv_reader(unicode_csv_data, dialect=csv.excel, **kwargs): # csv.py doesn't do Unicode; encode temporarily as UTF-8: csv_reader = csv.reader(utf_8_encoder(unicode_csv_data), dialect=dialect, **kwargs) for row in csv_reader: # decode UTF-8 back to Unicode, cell …

5
'ฆ่า' หมายความว่าอย่างไรเมื่อประมวลผล CSV ขนาดใหญ่ด้วย Python ซึ่งหยุดกะทันหัน
ฉันมีสคริปต์ Python ที่นำเข้าไฟล์ CSV ขนาดใหญ่จากนั้นนับจำนวนครั้งที่เกิดขึ้นของแต่ละคำในไฟล์จากนั้นส่งออกการนับไปยังไฟล์ CSV อื่น แต่สิ่งที่เกิดขึ้นคือเมื่อการนับส่วนนั้นเสร็จสิ้นและการส่งออกเริ่มขึ้นมันจะบอกว่าKilledในเทอร์มินัล ฉันไม่คิดว่านี่เป็นปัญหาหน่วยความจำ (ถ้าเป็นฉันคิดว่าฉันจะได้รับข้อผิดพลาดของหน่วยความจำไม่ใช่Killed) อาจเป็นไปได้ว่ากระบวนการนี้ใช้เวลานานเกินไปหรือไม่? ถ้าเป็นเช่นนั้นมีวิธีการขยายระยะเวลาเพื่อหลีกเลี่ยงปัญหานี้หรือไม่ นี่คือรหัส: csv.field_size_limit(sys.maxsize) counter={} with open("/home/alex/Documents/version2/cooccur_list.csv",'rb') as file_name: reader=csv.reader(file_name) for row in reader: if len(row)>1: pair=row[0]+' '+row[1] if pair in counter: counter[pair]+=1 else: counter[pair]=1 print 'finished counting' writer = csv.writer(open('/home/alex/Documents/version2/dict.csv', 'wb')) for key, value in counter.items(): writer.writerow([key, value]) และสิ่งที่Killedเกิดขึ้นหลังจากfinished …
94 python  csv  etl  kill 

7
จะอ่านข้อมูล csv หนึ่งบรรทัดใน Python ได้อย่างไร
มีตัวอย่างมากมายของการอ่านข้อมูล csv โดยใช้ python เช่นนี้: import csv with open('some.csv', newline='') as f: reader = csv.reader(f) for row in reader: print(row) ฉันต้องการอ่านข้อมูลเพียงบรรทัดเดียวและป้อนข้อมูลลงในตัวแปรต่างๆ ฉันจะทำอย่างไร? ฉันได้ดูตัวอย่างการทำงานทุกที่แล้ว รหัสของฉันดึงค่าสำหรับ i เท่านั้นและไม่มีค่าอื่น ๆ reader = csv.reader(csvfile, delimiter=',', quotechar='"') for row in reader: i = int(row[0]) a1 = int(row[1]) b1 = int(row[2]) c1 = int(row[2]) x1 = …
94 python  file  csv  iterator  next 

10
ถ่ายโอนฐานข้อมูล mysql ไปยังข้อมูลสำรองข้อความธรรมดา (CSV) จากบรรทัดคำสั่ง
ฉันต้องการหลีกเลี่ยง mysqldump เนื่องจากเอาต์พุตจะอยู่ในรูปแบบที่สะดวกสำหรับ mysql ในการอ่าน CSV ดูเป็นสากลมากขึ้น (ใช้ได้หนึ่งไฟล์ต่อตาราง) แต่ถ้ามีข้อดีคือ mysqldump ฉันก็หูผึ่ง นอกจากนี้ฉันต้องการบางสิ่งที่ฉันสามารถเรียกใช้จากบรรทัดคำสั่ง (linux) หากนั่นเป็นสคริปต์ mysql คำแนะนำวิธีสร้างสิ่งนั้นจะเป็นประโยชน์

1
Python Pandas: วิธีอ่านเฉพาะไฟล์ CSV n แถวแรกใน?
ฉันมีชุดข้อมูลขนาดใหญ่มากและฉันไม่สามารถอ่านชุดข้อมูลทั้งหมดได้ฉันจึงคิดว่าจะอ่านข้อมูลเพียงชุดเดียวเพื่อฝึก แต่ฉันไม่รู้ว่าจะทำอย่างไร ความคิดใด ๆ จะได้รับการชื่นชม
93 python  pandas  csv  file-io 

5
วิธีคัดลอกจากไฟล์ CSV ไปยังตาราง PostgreSQL พร้อมส่วนหัวในไฟล์ CSV
ฉันต้องการคัดลอกไฟล์ CSV ไปยังตาราง Postgres มีคอลัมน์ประมาณ 100 คอลัมน์ในตารางนี้ดังนั้นฉันจึงไม่ต้องการเขียนซ้ำถ้าไม่ต้องทำ ผมใช้\copy table from 'table.csv' delimiter ',' csv;คำสั่ง ERROR: relation "table" does not existแต่ไม่มีตารางที่สร้างฉันได้รับ ถ้าฉันเพิ่มตารางเปล่าฉันไม่พบข้อผิดพลาด แต่ไม่มีอะไรเกิดขึ้น ฉันลองคำสั่งนี้สองหรือสามครั้งและไม่มีผลลัพธ์หรือข้อความใด ๆ แต่ตารางไม่ได้รับการอัปเดตเมื่อฉันตรวจสอบผ่าน PGAdmin มีวิธีการนำเข้าตารางที่มีส่วนหัวเหมือนที่ฉันพยายามทำหรือไม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.