Averaging over columns while ignoring zero entriesOperations on a List of Vectors (Norm)Compute percentages...
What do you call someone who likes to pick fights?
How to write a chaotic neutral protagonist and prevent my readers from thinking they are evil?
Is this Paypal Github SDK reference really a dangerous site?
Getting the || sign while using Kurier
Having the player face themselves after the mid-game
Can I negotiate a patent idea for a raise, under French law?
Is it possible that a question has only two answers?
Is it a Cyclops number? "Nobody" knows!
When a wind turbine does not produce enough electricity how does the power company compensate for the loss?
How do we create new idioms and use them in a novel?
Giving a career talk in my old university, how prominently should I tell students my salary?
What is the generally accepted pronunciation of “topoi”?
I can't die. Who am I?
I need help with tikz tree node and label, offsets and inclination
Is it safe to abruptly remove Arduino power?
PTIJ: Why does only a Shor Tam ask at the Seder, and not a Shor Mu'ad?
What is better: yes / no radio, or simple checkbox?
Which situations would cause a company to ground or recall a aircraft series?
What is this diamond of every day?
Does "Until when" sound natural for native speakers?
For which categories of spectra is there an explicit description of the fibrant objects via lifting properties?
Are there historical instances of the capital of a colonising country being temporarily or permanently shifted to one of its colonies?
How can I find out information about a service?
Confusion about Complex Continued Fraction
Averaging over columns while ignoring zero entries
Operations on a List of Vectors (Norm)Compute percentages in a listElegant way to map a function over the columns of an arrayHow to count number of observations/rows within each groupHow can Tally group elements that differ only by a sign together?Creating Average Grid data from Co-ordinate and value dataList manipulation, averaging over lists and fidelityHow to select elements from a list of pairs based on 2nd element of the pairSubtract value from listHow to list ArrayFilter?
$begingroup$
I have:
list = {{1, 3, 4, 5, 6, 0, 9}, {4, 0, 3, 5, 0, 2, 0},
{1, 0, 2, 2, 2, 4, 0}}
I want to calculate the average but without considering the 0s.
The result should be:
Do[
array = list[[All, i]];
total = Total[array];
cnt = Count[array, 0];
result[[i]] = total/(Length@array - cnt);,
{i, 1, Length@result}
];
result // N
{2., 3., 3., 4., 4., 3., 9.}
How can I replace the Do
loop?
list-manipulation
$endgroup$
add a comment |
$begingroup$
I have:
list = {{1, 3, 4, 5, 6, 0, 9}, {4, 0, 3, 5, 0, 2, 0},
{1, 0, 2, 2, 2, 4, 0}}
I want to calculate the average but without considering the 0s.
The result should be:
Do[
array = list[[All, i]];
total = Total[array];
cnt = Count[array, 0];
result[[i]] = total/(Length@array - cnt);,
{i, 1, Length@result}
];
result // N
{2., 3., 3., 4., 4., 3., 9.}
How can I replace the Do
loop?
list-manipulation
$endgroup$
1
$begingroup$
Mean /@ DeleteCases[Transpose@list, 0, All]
$endgroup$
– MarcoB
2 days ago
$begingroup$
Thank you for the solution.
$endgroup$
– lio
2 days ago
$begingroup$
You’re welcome. I’ve added an answer since this solution works for you
$endgroup$
– MarcoB
2 days ago
4
$begingroup$
I'm not at a computer right now, so please tryTotal[list]/Total[Unitize[list]]
.
$endgroup$
– J. M. is computer-less♦
2 days ago
$begingroup$
@J.M. Well, that is clever! Cool trick :-)
$endgroup$
– MarcoB
2 days ago
add a comment |
$begingroup$
I have:
list = {{1, 3, 4, 5, 6, 0, 9}, {4, 0, 3, 5, 0, 2, 0},
{1, 0, 2, 2, 2, 4, 0}}
I want to calculate the average but without considering the 0s.
The result should be:
Do[
array = list[[All, i]];
total = Total[array];
cnt = Count[array, 0];
result[[i]] = total/(Length@array - cnt);,
{i, 1, Length@result}
];
result // N
{2., 3., 3., 4., 4., 3., 9.}
How can I replace the Do
loop?
list-manipulation
$endgroup$
I have:
list = {{1, 3, 4, 5, 6, 0, 9}, {4, 0, 3, 5, 0, 2, 0},
{1, 0, 2, 2, 2, 4, 0}}
I want to calculate the average but without considering the 0s.
The result should be:
Do[
array = list[[All, i]];
total = Total[array];
cnt = Count[array, 0];
result[[i]] = total/(Length@array - cnt);,
{i, 1, Length@result}
];
result // N
{2., 3., 3., 4., 4., 3., 9.}
How can I replace the Do
loop?
list-manipulation
list-manipulation
edited 2 days ago
m_goldberg
87.4k872198
87.4k872198
asked 2 days ago
liolio
1,108217
1,108217
1
$begingroup$
Mean /@ DeleteCases[Transpose@list, 0, All]
$endgroup$
– MarcoB
2 days ago
$begingroup$
Thank you for the solution.
$endgroup$
– lio
2 days ago
$begingroup$
You’re welcome. I’ve added an answer since this solution works for you
$endgroup$
– MarcoB
2 days ago
4
$begingroup$
I'm not at a computer right now, so please tryTotal[list]/Total[Unitize[list]]
.
$endgroup$
– J. M. is computer-less♦
2 days ago
$begingroup$
@J.M. Well, that is clever! Cool trick :-)
$endgroup$
– MarcoB
2 days ago
add a comment |
1
$begingroup$
Mean /@ DeleteCases[Transpose@list, 0, All]
$endgroup$
– MarcoB
2 days ago
$begingroup$
Thank you for the solution.
$endgroup$
– lio
2 days ago
$begingroup$
You’re welcome. I’ve added an answer since this solution works for you
$endgroup$
– MarcoB
2 days ago
4
$begingroup$
I'm not at a computer right now, so please tryTotal[list]/Total[Unitize[list]]
.
$endgroup$
– J. M. is computer-less♦
2 days ago
$begingroup$
@J.M. Well, that is clever! Cool trick :-)
$endgroup$
– MarcoB
2 days ago
1
1
$begingroup$
Mean /@ DeleteCases[Transpose@list, 0, All]
$endgroup$
– MarcoB
2 days ago
$begingroup$
Mean /@ DeleteCases[Transpose@list, 0, All]
$endgroup$
– MarcoB
2 days ago
$begingroup$
Thank you for the solution.
$endgroup$
– lio
2 days ago
$begingroup$
Thank you for the solution.
$endgroup$
– lio
2 days ago
$begingroup$
You’re welcome. I’ve added an answer since this solution works for you
$endgroup$
– MarcoB
2 days ago
$begingroup$
You’re welcome. I’ve added an answer since this solution works for you
$endgroup$
– MarcoB
2 days ago
4
4
$begingroup$
I'm not at a computer right now, so please try
Total[list]/Total[Unitize[list]]
.$endgroup$
– J. M. is computer-less♦
2 days ago
$begingroup$
I'm not at a computer right now, so please try
Total[list]/Total[Unitize[list]]
.$endgroup$
– J. M. is computer-less♦
2 days ago
$begingroup$
@J.M. Well, that is clever! Cool trick :-)
$endgroup$
– MarcoB
2 days ago
$begingroup$
@J.M. Well, that is clever! Cool trick :-)
$endgroup$
– MarcoB
2 days ago
add a comment |
2 Answers
2
active
oldest
votes
$begingroup$
Mean /@ DeleteCases[Transpose@list, 0, All]
{2,3,3,4,4,3,9}
$endgroup$
add a comment |
$begingroup$
I'm posting this as a CW answer, so J.M.'s very nice answer, made in a comment above, gets recorded as a real answer.
list = {{1, 3, 4, 5, 6, 0, 9}, {4, 0, 3, 5, 0, 2, 0}, {1, 0, 2, 2, 2, 4, 0}};
Total[list]/Total[Unitize[list]]
{2, 3, 3, 4, 4, 3, 9}
$endgroup$
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "387"
};
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: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
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%2fmathematica.stackexchange.com%2fquestions%2f192881%2faveraging-over-columns-while-ignoring-zero-entries%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
Mean /@ DeleteCases[Transpose@list, 0, All]
{2,3,3,4,4,3,9}
$endgroup$
add a comment |
$begingroup$
Mean /@ DeleteCases[Transpose@list, 0, All]
{2,3,3,4,4,3,9}
$endgroup$
add a comment |
$begingroup$
Mean /@ DeleteCases[Transpose@list, 0, All]
{2,3,3,4,4,3,9}
$endgroup$
Mean /@ DeleteCases[Transpose@list, 0, All]
{2,3,3,4,4,3,9}
answered 2 days ago
MarcoBMarcoB
37.4k556113
37.4k556113
add a comment |
add a comment |
$begingroup$
I'm posting this as a CW answer, so J.M.'s very nice answer, made in a comment above, gets recorded as a real answer.
list = {{1, 3, 4, 5, 6, 0, 9}, {4, 0, 3, 5, 0, 2, 0}, {1, 0, 2, 2, 2, 4, 0}};
Total[list]/Total[Unitize[list]]
{2, 3, 3, 4, 4, 3, 9}
$endgroup$
add a comment |
$begingroup$
I'm posting this as a CW answer, so J.M.'s very nice answer, made in a comment above, gets recorded as a real answer.
list = {{1, 3, 4, 5, 6, 0, 9}, {4, 0, 3, 5, 0, 2, 0}, {1, 0, 2, 2, 2, 4, 0}};
Total[list]/Total[Unitize[list]]
{2, 3, 3, 4, 4, 3, 9}
$endgroup$
add a comment |
$begingroup$
I'm posting this as a CW answer, so J.M.'s very nice answer, made in a comment above, gets recorded as a real answer.
list = {{1, 3, 4, 5, 6, 0, 9}, {4, 0, 3, 5, 0, 2, 0}, {1, 0, 2, 2, 2, 4, 0}};
Total[list]/Total[Unitize[list]]
{2, 3, 3, 4, 4, 3, 9}
$endgroup$
I'm posting this as a CW answer, so J.M.'s very nice answer, made in a comment above, gets recorded as a real answer.
list = {{1, 3, 4, 5, 6, 0, 9}, {4, 0, 3, 5, 0, 2, 0}, {1, 0, 2, 2, 2, 4, 0}};
Total[list]/Total[Unitize[list]]
{2, 3, 3, 4, 4, 3, 9}
answered 2 days ago
community wiki
m_goldberg
add a comment |
add a comment |
Thanks for contributing an answer to Mathematica Stack Exchange!
- 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.
Use MathJax to format equations. MathJax reference.
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%2fmathematica.stackexchange.com%2fquestions%2f192881%2faveraging-over-columns-while-ignoring-zero-entries%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
1
$begingroup$
Mean /@ DeleteCases[Transpose@list, 0, All]
$endgroup$
– MarcoB
2 days ago
$begingroup$
Thank you for the solution.
$endgroup$
– lio
2 days ago
$begingroup$
You’re welcome. I’ve added an answer since this solution works for you
$endgroup$
– MarcoB
2 days ago
4
$begingroup$
I'm not at a computer right now, so please try
Total[list]/Total[Unitize[list]]
.$endgroup$
– J. M. is computer-less♦
2 days ago
$begingroup$
@J.M. Well, that is clever! Cool trick :-)
$endgroup$
– MarcoB
2 days ago