2010-10-30 6 views
1

Pourriez-vous s'il vous plaît m'aider pour cette question?représentant le jour et quelques paramètres d'un mois

I have 3 matrices, P (puissance), T (température) et H (humidité)

chaque matrice comporte 31 colonnes (jours) et il y a 24 lignes pour chaque colonne

qui sont le données pour le Mars de l'année 2000, à savoir

par exemple, la matrice P a 31 colonnes où chaque colonne représente

données de jour pour Power par 24 heures et la même idée est T et H

J'ai essayé d'écrire un programme MATLAB qui atteint mon but mais

Il m'a donné des erreurs.

Mon but est:

Dans la fenêtre de commande Matlab, le programme devrait demander à l'utilisateur la phrase suivante:

S'il vous plaît entrer le numéro du jour de Mars 2000 du 1er au 31:

et je sais qu'il est comme suit:

Name = entrée (S'il vous plaît entrer le numéro du jour de Mars 2000 du 1er au 31 :)

Puis, quand, pour e xemple, le numéro 5 est entré, le résultat affiché est une matrice contenant les éléments suivants:

1ère colonne: Le nom du jour ou il peut être représenté par un nombre

2ème colonne: nombres simples 1-24 représentant les heures pour ce jour-là

3ème colonne: 24 points de P de ce jour extrait de l'original P (le numéro de la colonne 5 de l'original P)

quatrième colonne: 24 points de T de ce jour extrait de l'original T (la colonne numéro 5 de l'ori ginal T)

cinquième colonne: 24 points de H de ce jour extrait de l'original H (le numéro de la colonne 5 du H d'origine)

Toute aide sera très appréciée,

salutations

Répondre

0

Voici ce que vous demandez:

% some sample data 
P = rand(24,31); 
T = rand(24,31); 
H = rand(24,31); 
% input day number 
daynum=input('Please enter the day number of March, 2000 from 1 to 31: '); 
[r, c] = size(P); 
% generate output matrix 
OutputMatrix = zeros(r,5); 
OutputMatrix(:,1) = repmat(weekday(datenum(2000,3,daynum)),r,1); 
OutputMatrix(:,2) = 1:r; 
OutputMatrix(:,3) = P(:,daynum); 
OutputMatrix(:,4) = T(:,daynum); 
OutputMatrix(:,5) = H(:,daynum); 
disp(OutputMatrix) 

La matrice peut être générée dans une seule ligne, mais cette manière est plus claire.

Est-ce toujours pour mars 2000? :) D'où obtenez-vous cette information?

+0

Merci pour cette aide. En fait, j'ai des données énormes pour de nombreuses années mais ce n'est qu'un échantillon. Ceci est lié à mes travaux de thèse de master.Mais maintenant, si nous voulons élargir le programme, je veux dire prendre toute l'année plutôt qu'un seul mois, puis faire comme ci-dessus, mais maintenant appuyer sur un numéro de mois puis un numéro de jour, et tracer le résultat P contre index (24 heures) pour le jour sélectionné. – user488182

+0

Merci beaucoup. Le programme est parfait, mais la première colonne devrait représenter le nom du jour, lundi ou mardi, ... etc, ce n'est pas le numéro du jour. salutations – user488182

+0

Comment vos données sont-elles organisées? Ou avez-vous besoin d'un conseil pour organiser les données? Quelle est votre expérience MATLAB? Parce que personne ne fera tout le projet pour vous. – yuk

Questions connexes