我正在使用 RStudio 并使用 R 語言通過函式將資料幀讀入 RStudio read.csv,我沒有任何問題。
這是 Rdput函式的輸出,因此您可以看到資料幀。我不能為 python 做一個等效的版本,因為我在 RStudio 中沒有得到正確的版本。
structure(list(X = 1:32, car = c("Mazda RX4", "Mazda RX4 Wag",
"Datsun 710", "Hornet 4 Drive", "Hornet Sportabout", "Valiant",
"Duster 360", "Merc 240D", "Merc 230", "Merc 280", "Merc 280C",
"Merc 450SE", "Merc 450SL", "Merc 450SLC", "Cadillac Fleetwood",
"Lincoln Continental", "Chrysler Imperial", "Fiat 128", "Honda Civic",
"Toyota Corolla", "Toyota Corona", "Dodge Challenger", "AMC Javelin",
"Camaro Z28", "Pontiac Firebird", "Fiat X1-9", "Porsche 914-2",
"Lotus Europa", "Ford Pantera L", "Ferrari Dino", "Maserati Bora",
"Volvo 142E"), mpg = c(21, 21, 22.8, 21.4, 18.7, 18.1, 14.3,
24.4, 22.8, 19.2, 17.8, 16.4, 17.3, 15.2, 10.4, 10.4, 14.7, 32.4,
30.4, 33.9, 21.5, 15.5, 15.2, 13.3, 19.2, 27.3, 26, 30.4, 15.8,
19.7, 15, 21.4), cyl = c(6L, 6L, 4L, 6L, 8L, 6L, 8L, 4L, 4L,
6L, 6L, 8L, 8L, 8L, 8L, 8L, 8L, 4L, 4L, 4L, 4L, 8L, 8L, 8L, 8L,
4L, 4L, 4L, 8L, 6L, 8L, 4L), disp = c(160, 160, 108, 258, 360,
225, 360, 146.7, 140.8, 167.6, 167.6, 275.8, 275.8, 275.8, 472,
460, 440, 78.7, 75.7, 71.1, 120.1, 318, 304, 350, 400, 79, 120.3,
95.1, 351, 145, 301, 121), hp = c(110L, 110L, 93L, 110L, 175L,
105L, 245L, 62L, 95L, 123L, 123L, 180L, 180L, 180L, 205L, 215L,
230L, 66L, 52L, 65L, 97L, 150L, 150L, 245L, 175L, 66L, 91L, 113L,
264L, 175L, 335L, 109L), drat = c(3.9, 3.9, 3.85, 3.08, 3.15,
2.76, 3.21, 3.69, 3.92, 3.92, 3.92, 3.07, 3.07, 3.07, 2.93, 3,
3.23, 4.08, 4.93, 4.22, 3.7, 2.76, 3.15, 3.73, 3.08, 4.08, 4.43,
3.77, 4.22, 3.62, 3.54, 4.11), wt = c(2.62, 2.875, 2.32, 3.215,
3.44, 3.46, 3.57, 3.19, 3.15, 3.44, 3.44, 4.07, 3.73, 3.78, 5.25,
5.424, 5.345, 2.2, 1.615, 1.835, 2.465, 3.52, 3.435, 3.84, 3.845,
1.935, 2.14, 1.513, 3.17, 2.77, 3.57, 2.78), qsec = c(16.46,
17.02, 18.61, 19.44, 17.02, 20.22, 15.84, 20, 22.9, 18.3, 18.9,
17.4, 17.6, 18, 17.98, 17.82, 17.42, 19.47, 18.52, 19.9, 20.01,
16.87, 17.3, 15.41, 17.05, 18.9, 16.7, 16.9, 14.5, 15.5, 14.6,
18.6), vs = c(0L, 0L, 1L, 1L, 0L, 1L, 0L, 1L, 1L, 1L, 1L, 0L,
0L, 0L, 0L, 0L, 0L, 1L, 1L, 1L, 1L, 0L, 0L, 0L, 0L, 1L, 0L, 1L,
0L, 0L, 0L, 1L), am = c(1L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L, 1L, 0L, 0L, 0L, 0L, 0L, 1L,
1L, 1L, 1L, 1L, 1L, 1L), gear = c(4L, 4L, 4L, 3L, 3L, 3L, 3L,
4L, 4L, 4L, 4L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 3L, 3L, 3L,
3L, 3L, 4L, 5L, 5L, 5L, 5L, 5L, 4L), carb = c(4L, 4L, 1L, 1L,
2L, 1L, 4L, 2L, 2L, 4L, 4L, 3L, 3L, 3L, 4L, 4L, 4L, 1L, 2L, 1L,
1L, 2L, 2L, 4L, 2L, 1L, 2L, 2L, 4L, 6L, 8L, 2L)), class = "data.frame", row.names = c(NA,
-32L))
這是 RStudio 控制臺中的代碼和資料框的影像。

現在我正在使用 python 將相同的 csv 讀入 RStudio,除了這個不太好用。wt例如,缺少一些變數,例如變數。此外,它在左側創建了一個額外的列。我想這可能是因為wt變數是 adbl但這不可能是原因,因為mpg它也是雙精度數。

我在 pd.read_csv 中做錯了什么,mtcars 資料幀未正確讀取?
uj5u.com熱心網友回復:
資料讀取成功。如果你說顯示中的點是因為默認情況下在 python pandas 中只顯示幾列,你可以用
# it will show all columns
import pandas as pd
pd.set_option("display.max_columns", None)
對于“未命名:0”列,這是一個默認保存的沒有名稱的索引,您可以將其用作索引而不是具有以下引數的列:
pd.read_csv('mtcars.csv', index=0)
如果您想在閱讀時忽略它,可以使用:
pd.read_csv('mtcars.csv', index_col=False)
uj5u.com熱心網友回復:
你的 Python 代碼沒有錯。只是資料框太“寬”,列太多,無法顯示所有列。這就是為什么在cyl和之間有一個“...” vs。
要解決此問題,請參閱如何擴展輸出顯示以查看 Pandas DataFrame 的更多列?
我認為您來自 RStudio,資料框未完全顯示可能會讓您感到困擾。就個人而言,當我大部分時間清楚我目前擁有哪些資料列時,我已經習慣了。
對于該Unnamed: 0列,這可能是因為上次將資料幀寫入 csv 時,您還包含了不需要的索引。你mtcars.csv可能看起來像這樣:
,car,mpg,...
1,Mazda RX4,21.0,...
2,Mazda RX4 Wag,21.0,...
但最好是
car,mpg,...
Mazda RX4,21.0,...
Mazda RX4 Wag,21.0,...
因為您保存的索引可能毫無意義。
您要么(1)下次不將索引寫入 csv(我不知道您使用的是 R 還是 Python),要么(2)寫入pd.read_csv('mtcars.csv', index=0)以便將 csv 中的第零列自動決議為索引。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/464545.html
上一篇:在csv檔案中搜索特定的str
下一篇:動態選擇CSV檔案中的特定列
