Why is Python Pandas loc not returning a single item?
For an assignment I need to access entries in a CSV file by the column name and index.
I am using a for loop to get each index. Contrary to my expectations,
read.loc[[i], ["magType"]]
returns something like
this
instead of just "mb" which is what I would expect based on a pandas cheatsheet (linked below)
Why is this? And how can I get just the item (in this case "mb" without the magType and 0)?
import pandas as pd
read = pd.read_csv("earthquake_data.csv")
print(read.loc[[0], ["magType"]])
magType
0 mb
https://s3.amazonaws.com/assets.datacamp.com/blog_assets/PandasPythonForDataScience.pdf
python pandas
add a comment |
For an assignment I need to access entries in a CSV file by the column name and index.
I am using a for loop to get each index. Contrary to my expectations,
read.loc[[i], ["magType"]]
returns something like
this
instead of just "mb" which is what I would expect based on a pandas cheatsheet (linked below)
Why is this? And how can I get just the item (in this case "mb" without the magType and 0)?
import pandas as pd
read = pd.read_csv("earthquake_data.csv")
print(read.loc[[0], ["magType"]])
magType
0 mb
https://s3.amazonaws.com/assets.datacamp.com/blog_assets/PandasPythonForDataScience.pdf
python pandas
add a comment |
For an assignment I need to access entries in a CSV file by the column name and index.
I am using a for loop to get each index. Contrary to my expectations,
read.loc[[i], ["magType"]]
returns something like
this
instead of just "mb" which is what I would expect based on a pandas cheatsheet (linked below)
Why is this? And how can I get just the item (in this case "mb" without the magType and 0)?
import pandas as pd
read = pd.read_csv("earthquake_data.csv")
print(read.loc[[0], ["magType"]])
magType
0 mb
https://s3.amazonaws.com/assets.datacamp.com/blog_assets/PandasPythonForDataScience.pdf
python pandas
For an assignment I need to access entries in a CSV file by the column name and index.
I am using a for loop to get each index. Contrary to my expectations,
read.loc[[i], ["magType"]]
returns something like
this
instead of just "mb" which is what I would expect based on a pandas cheatsheet (linked below)
Why is this? And how can I get just the item (in this case "mb" without the magType and 0)?
import pandas as pd
read = pd.read_csv("earthquake_data.csv")
print(read.loc[[0], ["magType"]])
magType
0 mb
https://s3.amazonaws.com/assets.datacamp.com/blog_assets/PandasPythonForDataScience.pdf
python pandas
python pandas
asked Nov 25 '18 at 23:52
L. ChenL. Chen
32
32
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
read.loc[0, "magType"]
returns the element at 0
-th row and magType
column - presumably the result you desire.
read.loc[[0], ["magType"]]
, on the other hand, returns a slice of the DataFrame, with columns from ["magType"]
, with all the rows whose indices are in [0]
. (Compare read.loc[[1, 2, 3], ["magType", "magnitude"]]
or read.loc[[0:10], ["magType", "magnitude"]]
to see a general case of this.) Like any other DataFrame, it has indices and column names.
I'd also throw in that the canonical way to access a scalar by row/column labels isat
, i.e.read.at[0, 'magType']
. Be careful with the description "the0
th row", alignment between integer position and label is only true when your index is a regularpd.RangeIndex
.
– jpp
Nov 26 '18 at 2:01
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53473188%2fwhy-is-python-pandas-loc-not-returning-a-single-item%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
read.loc[0, "magType"]
returns the element at 0
-th row and magType
column - presumably the result you desire.
read.loc[[0], ["magType"]]
, on the other hand, returns a slice of the DataFrame, with columns from ["magType"]
, with all the rows whose indices are in [0]
. (Compare read.loc[[1, 2, 3], ["magType", "magnitude"]]
or read.loc[[0:10], ["magType", "magnitude"]]
to see a general case of this.) Like any other DataFrame, it has indices and column names.
I'd also throw in that the canonical way to access a scalar by row/column labels isat
, i.e.read.at[0, 'magType']
. Be careful with the description "the0
th row", alignment between integer position and label is only true when your index is a regularpd.RangeIndex
.
– jpp
Nov 26 '18 at 2:01
add a comment |
read.loc[0, "magType"]
returns the element at 0
-th row and magType
column - presumably the result you desire.
read.loc[[0], ["magType"]]
, on the other hand, returns a slice of the DataFrame, with columns from ["magType"]
, with all the rows whose indices are in [0]
. (Compare read.loc[[1, 2, 3], ["magType", "magnitude"]]
or read.loc[[0:10], ["magType", "magnitude"]]
to see a general case of this.) Like any other DataFrame, it has indices and column names.
I'd also throw in that the canonical way to access a scalar by row/column labels isat
, i.e.read.at[0, 'magType']
. Be careful with the description "the0
th row", alignment between integer position and label is only true when your index is a regularpd.RangeIndex
.
– jpp
Nov 26 '18 at 2:01
add a comment |
read.loc[0, "magType"]
returns the element at 0
-th row and magType
column - presumably the result you desire.
read.loc[[0], ["magType"]]
, on the other hand, returns a slice of the DataFrame, with columns from ["magType"]
, with all the rows whose indices are in [0]
. (Compare read.loc[[1, 2, 3], ["magType", "magnitude"]]
or read.loc[[0:10], ["magType", "magnitude"]]
to see a general case of this.) Like any other DataFrame, it has indices and column names.
read.loc[0, "magType"]
returns the element at 0
-th row and magType
column - presumably the result you desire.
read.loc[[0], ["magType"]]
, on the other hand, returns a slice of the DataFrame, with columns from ["magType"]
, with all the rows whose indices are in [0]
. (Compare read.loc[[1, 2, 3], ["magType", "magnitude"]]
or read.loc[[0:10], ["magType", "magnitude"]]
to see a general case of this.) Like any other DataFrame, it has indices and column names.
answered Nov 25 '18 at 23:58
AmadanAmadan
130k13142193
130k13142193
I'd also throw in that the canonical way to access a scalar by row/column labels isat
, i.e.read.at[0, 'magType']
. Be careful with the description "the0
th row", alignment between integer position and label is only true when your index is a regularpd.RangeIndex
.
– jpp
Nov 26 '18 at 2:01
add a comment |
I'd also throw in that the canonical way to access a scalar by row/column labels isat
, i.e.read.at[0, 'magType']
. Be careful with the description "the0
th row", alignment between integer position and label is only true when your index is a regularpd.RangeIndex
.
– jpp
Nov 26 '18 at 2:01
I'd also throw in that the canonical way to access a scalar by row/column labels is
at
, i.e. read.at[0, 'magType']
. Be careful with the description "the 0
th row", alignment between integer position and label is only true when your index is a regular pd.RangeIndex
.– jpp
Nov 26 '18 at 2:01
I'd also throw in that the canonical way to access a scalar by row/column labels is
at
, i.e. read.at[0, 'magType']
. Be careful with the description "the 0
th row", alignment between integer position and label is only true when your index is a regular pd.RangeIndex
.– jpp
Nov 26 '18 at 2:01
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53473188%2fwhy-is-python-pandas-loc-not-returning-a-single-item%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown