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

กรอบข้อมูลเป็นโครงสร้างข้อมูลแบบตาราง โดยทั่วไปจะมีข้อมูลที่แถวคือการสังเกตและคอลัมน์เป็นตัวแปรประเภทต่างๆ ในขณะที่ "data frame" หรือ "dataframe" เป็นคำที่ใช้สำหรับแนวคิดนี้ในหลายภาษา (R, Apache Spark, deedle, Maple, pandas library ใน Python และ DataFrames library ใน Julia) "table" เป็นคำที่ใช้ใน MATLAB และ SQL

6
Pandas: ฉันจะใช้ฟังก์ชัน Apply () สำหรับคอลัมน์เดียวได้อย่างไร
ฉันมีกรอบข้อมูลแพนด้าสองคอลัมน์ ฉันต้องการเปลี่ยนค่าของคอลัมน์แรกโดยไม่ส่งผลกระทบต่อค่าที่สองและกลับกรอบข้อมูลทั้งหมดโดยมีการเปลี่ยนแปลงค่าของคอลัมน์แรก ฉันจะทำเช่นนั้นโดยใช้การสมัครในแพนด้าได้อย่างไร?

9
ชื่อหรือชื่อคอลัมน์ดัชนีหมีแพนด้า
ฉันจะรับชื่อคอลัมน์ดัชนีใน python python ได้อย่างไร นี่คือตัวอย่างดาต้าเฟรม: Column 1 Index Title Apples 1 Oranges 2 Puppies 3 Ducks 4 สิ่งที่ฉันพยายามทำคือรับ / ตั้งค่าชื่อดัชนีของไฟล์ข้อมูล นี่คือสิ่งที่ฉันพยายาม: import pandas as pd data = {'Column 1' : [1., 2., 3., 4.], 'Index Title' : ["Apples", "Oranges", "Puppies", "Ducks"]} df = pd.DataFrame(data) df.index = df["Index Title"] del df["Index …

15
แยกคอลัมน์สตริงข้อมูลเฟรมออกเป็นหลายคอลัมน์
ฉันต้องการใช้ข้อมูลของแบบฟอร์ม before = data.frame(attr = c(1,30,4,6), type=c('foo_and_bar','foo_and_bar_2')) attr type 1 1 foo_and_bar 2 30 foo_and_bar_2 3 4 foo_and_bar 4 6 foo_and_bar_2 และใช้split()ในคอลัมน์ " type" จากด้านบนเพื่อรับสิ่งนี้: attr type_1 type_2 1 1 foo bar 2 30 foo bar_2 3 4 foo bar 4 6 foo bar_2 ฉันคิดว่ามีสิ่งที่ซับซ้อนอย่างไม่น่าเชื่อที่เกี่ยวข้องกับรูปแบบการapplyทำงานบางอย่างแต่ฉันหายไปตั้งแต่นั้น มันดูซับซ้อนเกินไปที่จะเป็นวิธีที่ดีที่สุด ฉันสามารถใช้strsplitด้านล่าง แต่แล้วไม่ชัดเจนว่าจะกลับไปที่ 2 คอลัมน์ในกรอบข้อมูลได้อย่างไร …
246 r  string  dataframe  split  r-faq 

6
ทำไมฟังก์ชั่น 'ใช้' ของนุ่นถึงการอ้างอิงหลายคอลัมน์ทำงานไม่ได้ [ปิด]
ปิด. คำถามนี้เป็นคำถามที่ไม่สามารถทำซ้ำหรือเกิดจากความผิดพลาด ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดเมื่อปีที่แล้ว ปรับปรุงคำถามนี้ ฉันมีปัญหาบางอย่างเกี่ยวกับฟังก์ชั่นการใช้หมีแพนด้าเมื่อใช้หลายคอลัมน์ด้วยดาต้าเฟรมต่อไปนี้ df = DataFrame ({'a' : np.random.randn(6), 'b' : ['foo', 'bar'] * 3, 'c' : np.random.randn(6)}) และฟังก์ชั่นดังต่อไปนี้ def my_test(a, b): return a % b เมื่อฉันพยายามใช้ฟังก์ชั่นนี้กับ: df['Value'] = df.apply(lambda row: my_test(row[a], row[c]), axis=1) ฉันได้รับข้อความแสดงข้อผิดพลาด: NameError: ("global name 'a' is not defined", u'occurred …

13
รวมสองเฟรมข้อมูลตามแถว (rbind) เมื่อมีชุดคอลัมน์ที่แตกต่างกัน
เป็นไปได้หรือไม่ที่จะผูกแถวข้อมูลสองเฟรมที่ไม่มีชุดคอลัมน์เดียวกัน ฉันหวังว่าจะรักษาคอลัมน์ที่ไม่ตรงกันหลังจากการผูกไว้
232 r  dataframe  r-faq 

12
pandas รับแถวที่ไม่ได้อยู่ใน dataframe อื่น
ฉันมีกรอบข้อมูลแพนด้าสองตัวที่มีบางแถวเหมือนกัน สมมติว่า dataframe2 เป็นชุดย่อยของ dataframe1 ฉันจะได้แถวของ dataframe1 ที่ไม่ได้อยู่ใน dataframe2 ได้อย่างไร? df1 = pandas.DataFrame(data = {'col1' : [1, 2, 3, 4, 5], 'col2' : [10, 11, 12, 13, 14]}) df2 = pandas.DataFrame(data = {'col1' : [1, 2, 3], 'col2' : [10, 11, 12]})
229 python  pandas  dataframe 

19
ทำให้คอลัมน์ของกรอบข้อมูลนุ่นเป็นปกติ
ฉันมี dataframe ใน pandas ที่แต่ละคอลัมน์มีช่วงค่าที่แตกต่างกัน ตัวอย่างเช่น: DF: A B C 1000 10 0.5 765 5 0.35 800 7 0.09 ความคิดใดที่ฉันสามารถทำให้คอลัมน์ปกติของ dataframe นี้มีค่าแต่ละค่าอยู่ระหว่าง 0 ถึง 1 ผลลัพธ์ที่ฉันต้องการคือ: A B C 1 1 1 0.765 0.5 0.7 0.8 0.7 0.18(which is 0.09/0.5)

6
รับดัชนีคอลัมน์จากชื่อคอลัมน์ใน python python
ใน R เมื่อคุณต้องการดึงดัชนีคอลัมน์ตามชื่อของคอลัมน์ที่คุณสามารถทำได้ idx <- which(names(my_data)==my_colum_name) มีวิธีการทำเช่นเดียวกันกับดาต้าดาต้าแพนด้า


8
อัปเดต dataframe ในนุ่นขณะทำซ้ำทีละแถว
ฉันมีกรอบข้อมูลแพนด้าที่มีลักษณะเช่นนี้ (มันค่อนข้างใหญ่) date exer exp ifor mat 1092 2014-03-17 American M 528.205 2014-04-19 1093 2014-03-17 American M 528.205 2014-04-19 1094 2014-03-17 American M 528.205 2014-04-19 1095 2014-03-17 American M 528.205 2014-04-19 1096 2014-03-17 American M 528.205 2014-05-17 ตอนนี้ฉันต้องการวนซ้ำทีละแถวและเมื่อฉันผ่านแต่ละแถวค่าของifor ในแต่ละแถวสามารถเปลี่ยนแปลงได้ขึ้นอยู่กับเงื่อนไขบางอย่างและฉันต้องการค้นหา dataframe อื่น ตอนนี้ฉันจะอัปเดตสิ่งนี้อย่างไรเมื่อฉันย้ำ พยายามบางสิ่งที่พวกเขาไม่ได้ทำงาน for i, row in df.iterrows(): if <something>: …

7
อะไรคือความแตกต่างระหว่างการเข้าร่วมและรวมใน Pandas?
สมมติว่าฉันมี DataFrames สองตัวดังนี้: left = pd.DataFrame({'key1': ['foo', 'bar'], 'lval': [1, 2]}) right = pd.DataFrame({'key2': ['foo', 'bar'], 'rval': [4, 5]}) ฉันต้องการรวมพวกเขาดังนั้นฉันลองแบบนี้: pd.merge(left, right, left_on='key1', right_on='key2') และฉันมีความสุข key1 lval key2 rval 0 foo 1 foo 4 1 bar 2 bar 5 แต่ฉันพยายามใช้วิธีการเข้าร่วมซึ่งฉันเชื่อว่ามันคล้ายกันมาก left.join(right, on=['key1', 'key2']) และฉันได้รับสิ่งนี้: //anaconda/lib/python2.7/site-packages/pandas/tools/merge.pyc in _validate_specification(self) 406 if self.right_index: …
208 python  pandas  dataframe  join 

7
นุ่นกลุ่มและผลรวม
ฉันใช้เฟรมข้อมูลนี้: Fruit Date Name Number Apples 10/6/2016 Bob 7 Apples 10/6/2016 Bob 8 Apples 10/6/2016 Mike 9 Apples 10/7/2016 Steve 10 Apples 10/7/2016 Bob 1 Oranges 10/7/2016 Bob 2 Oranges 10/6/2016 Tom 15 Oranges 10/6/2016 Mike 57 Oranges 10/6/2016 Bob 65 Oranges 10/7/2016 Tony 1 Grapes 10/7/2016 Bob 1 Grapes …

13
จะแสดงเนื้อหาคอลัมน์แบบเต็มใน Spark Dataframe ได้อย่างไร
ฉันใช้ spark-csv เพื่อโหลดข้อมูลลงใน DataFrame ฉันต้องการทำแบบสอบถามง่ายๆและแสดงเนื้อหา: val df = sqlContext.read.format("com.databricks.spark.csv").option("header", "true").load("my.csv") df.registerTempTable("tasks") results = sqlContext.sql("select col from tasks"); results.show() คอลัมน์ดูเหมือนว่าถูกตัดทอน: scala> results.show(); +--------------------+ | col| +--------------------+ |2015-11-16 07:15:...| |2015-11-16 07:15:...| |2015-11-16 07:15:...| |2015-11-16 07:15:...| |2015-11-16 07:15:...| |2015-11-16 07:15:...| |2015-11-16 07:15:...| |2015-11-16 07:15:...| |2015-11-16 07:15:...| |2015-11-16 07:15:...| |2015-11-16 07:15:...| |2015-11-16 07:15:...| |2015-11-16 …

20
แบ่งสตริงสตริง (explode) pandas dataframe เป็นแถวแยก
ฉันมีpandas dataframeสตริงข้อความหนึ่งคอลัมน์ที่มีค่าที่คั่นด้วยเครื่องหมายจุลภาค ฉันต้องการแยกแต่ละฟิลด์ CSV และสร้างแถวใหม่ต่อรายการ (สมมติว่า CSV สะอาดและต้องการแบ่งเพียง ',') ตัวอย่างเช่นaควรเป็นb: In [7]: a Out[7]: var1 var2 0 a,b,c 1 1 d,e,f 2 In [8]: b Out[8]: var1 var2 0 a 1 1 b 1 2 c 1 3 d 2 4 e 2 5 f 2 จนถึงตอนนี้ฉันได้ลองใช้ฟังก์ชั่นง่าย ๆ หลายอย่าง แต่.applyวิธีการดูเหมือนจะยอมรับเพียงหนึ่งแถวเป็นค่าตอบแทนเมื่อมันถูกใช้กับแกนและฉันไม่สามารถ.transformทำงานได้ …

17
ตรวจจับและแยกค่าผิดปกติในกรอบข้อมูล Pandas
ฉันมีกรอบข้อมูลแพนด้ากับคอลัมน์ไม่กี่ ตอนนี้ฉันรู้แล้วว่าแถวบางเส้นเป็นค่าผิดปกติซึ่งขึ้นอยู่กับค่าคอลัมน์ที่แน่นอน ตัวอย่างเช่น คอลัมน์ 'Vol' มีค่าทั้งหมดโดยรอบ12xxและหนึ่งค่าคือ4000(ค่าที่มากกว่า) ตอนนี้ฉันต้องการยกเว้นแถวเหล่านั้นที่มีVolคอลัมน์แบบนี้ โดยพื้นฐานแล้วฉันต้องใส่ตัวกรองลงในกรอบข้อมูลเพื่อให้เราเลือกแถวทั้งหมดที่ค่าของคอลัมน์หนึ่งอยู่ภายในกล่าวคือค่าเบี่ยงเบนมาตรฐาน 3 ค่าจากค่าเฉลี่ย อะไรคือวิธีที่สวยงามในการบรรลุเป้าหมายนี้?

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