Matlab和Python的一些基本操作
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Matlab和Python的一些基本操作,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1642字,纯文字阅读大概需要3分钟。
内容图文
![Matlab和Python的一些基本操作](/upload/InfoBanner/zyjiaocheng/731/f3bfecaf50414e3cbabbfbb525ed6377.jpg)
靠记忆总是记不住python和matlab的一些区别,道理上很简单,但很久不用就会忘记,自用的一些方法记录,持续更新
关于数组
数组创建
# python
import numpy as np
np.array([[1,2,3],[4,5,6]])
# matlab
a = [1 2 3;4 5 6];
- matlab和python创建和索引数组的区别
创建:
python用很多个中括号[],不同纬度的用逗号,隔开
matlab中创建用一个中括号[],不同纬度用分号隔开,索引用小括号()
索引:
python索引用一个中括号[],不同纬度用逗号隔开,用单个:表示所有,1:2:n表示开始、步长、结束
matlab索引用一个小括号,不同纬度用分号隔开,冒号用法相同
数组拼接
# python
featurs = np.concatenate((tmp1,tmp2),axis = 1)
# matlab
horzcat(A,B)
vertcat(A,B)
关于数组内存共享
在python中,若直接赋值,那么a和b是共享内存的,改变a,那么b也会跟着改变
a = a = np.array([[1,2,3],[4,5,6]])
b = a
a[0,2] = 5
print(b[0,2]) //--> 5
若需要生成一个不共享内存的矩阵,则使用copy()方法
b = a.copy()
而matlab赋值后是独立内存的两个变量
a = [1 2 3;4 5 6];
b = a;
a(1,3) =5;
b(1,3) //-->3
关于循环
matlab语法
for i = 1:20
...
end
//or
while(i<20)
...
end
python语法
for i in range(1,20):
...
//or
while(i<20):
...
关于格式化输出
matlab用fprinf
fprintf("now deal with %d/%d:%s \n",i,total,cur_num); //类似于C语言
python用print
print('concate num is %d, %s'% (21, concate[3,3])) //用%符号
关于文件读写
matlab中用fopen的一系列的函数
f = fopen('path', 'r') //后面r表示读还是写
if(f < 1)
fprintf("error") //f的返回值可看出是否打开文件成功
end
while (feof(f) ~= 1) //feof函数用来表示文件是否读取结束
txt = fgetl(f) //fgetl函数获得每一行的数据,返回值为string类
end
python中用np.loadtxt,txt文件和csv文件都可以用
head_features = np.loadtxt('heads_features.csv',dtype=np.str_,delimiter=',')
//得到的head_features是一个np.array
内容总结
以上是互联网集市为您收集整理的Matlab和Python的一些基本操作全部内容,希望文章能够帮你解决Matlab和Python的一些基本操作所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。