最近在找工作,想做数据分析那一方面(又不是大数据),结果每个人都要求会R语言
,我快崩溃了,于是还是定下心来学一下R语言
。
刚一开始就发现崩溃了。
一、上网找了一个实例,居然奇奇怪怪!?
首先找到一个教程 R语言简单实现聚类分析计算与分析(基于系统聚类法),由于找不到他当时的数据源,于是下载了一个最新的房价数据。
对于不同的聚类
方法都做了一次,结果发现崩溃的事情来了。
输出的代码:
for (i in 1:5) {
print(paste("第",i,"类"))
print(china[re[[i]],]$地区)
}
输出的结果是这样子的:
[1] "第 1 类"
[1] 厦门市 北京市 无锡市 杭州市 广州市 深圳市 合肥市 上海市 南京市 武汉市
70 Levels: 安庆市 蚌埠市 包头市 北海市 北京市 常德市 成都市 大理白族自治州 大连市 丹东市 福州市 赣州市 广州市 贵阳市 桂林市 哈尔滨市 海口市 杭州市 合肥市 呼和浩特市 惠州市 吉林市 济南市 济宁市 金华市 锦州市 九江市 昆明市 ... 遵义市
[1] "第 2 类"
[1] 温州市 泉州市 牡丹江市 银川市 丹东市 包头市 西宁市 锦州市 桂林市
70 Levels: 安庆市 蚌埠市 包头市 北海市 北京市 常德市 成都市 大理白族自治州 大连市 丹东市 福州市 赣州市 广州市 贵阳市 桂林市 哈尔滨市 海口市 杭州市 合肥市 呼和浩特市 惠州市 吉林市 济南市 济宁市 金华市 锦州市 九江市 昆明市 ... 遵义市
[1] "第 3 类"
[1] 宁波市 金华市 海口市 岳阳市 南充市 湛江市 重庆市 安庆市 宜昌市 常德市 赣州市 哈尔滨市 乌鲁木齐市 蚌埠市 徐州市
[16] 扬州市 成都市 泸州市 昆明市 烟台市 南宁市 平顶山市 北海市 沈阳市 贵阳市 韶关市 襄阳市 大连市 九江市 长春市
[31] 太原市 秦皇岛市 济宁市 兰州市 唐山市 吉林市 遵义市 洛阳市 大理白族自治州 呼和浩特市
70 Levels: 安庆市 蚌埠市 包头市 北海市 北京市 常德市 成都市 大理白族自治州 大连市 丹东市 福州市 赣州市 广州市 贵阳市 桂林市 哈尔滨市 海口市 杭州市 合肥市 呼和浩特市 惠州市 吉林市 济南市 济宁市 金华市 锦州市 九江市 昆明市 ... 遵义市
[1] "第 4 类"
[1] 三亚市 西安市
70 Levels: 安庆市 蚌埠市 包头市 北海市 北京市 常德市 成都市 大理白族自治州 大连市 丹东市 福州市 赣州市 广州市 贵阳市 桂林市 哈尔滨市 海口市 杭州市 合肥市 呼和浩特市 惠州市 吉林市 济南市 济宁市 金华市 锦州市 九江市 昆明市 ... 遵义市
[1] "第 5 类"
[1] 郑州市 福州市 天津市 石家庄市 长沙市 济南市 青岛市 惠州市 南昌市
70 Levels: 安庆市 蚌埠市 包头市 北海市 北京市 常德市 成都市 大理白族自治州 大连市 丹东市 福州市 赣州市 广州市 贵阳市 桂林市 哈尔滨市 海口市 杭州市 合肥市 呼和浩特市 惠州市 吉林市 济南市 济宁市 金华市 锦州市 九江市 昆明市 ... 遵义市
>
是出了结果。
二、输出结果的样式
好吧,我是CSV
导入的,我现在想试着把它V回Excel
里面看看各种分类代表的是什么,但你这么一行十几个市我怎么V啊!于是想修改下R语言代码显示每行一个,在每个市后面加个\n会不会好一点呢?
结果:
for (i in 1:5) {
print(paste("第",i,"类"))
print(paste(china[re[[i]],]$地区,",",i,"\n"))
}
结果输出了:
[1] "第 1 类"
[1] "厦门市 , 1 \n" "北京市 , 1 \n" "无锡市 , 1 \n" "杭州市 , 1 \n" "广州市 , 1 \n" "深圳市 , 1 \n" "合肥市 , 1 \n" "上海市 , 1 \n" "南京市 , 1 \n" "武汉市 , 1 \n"
[1] "第 2 类"
[1] "温州市 , 2 \n" "泉州市 , 2 \n" "牡丹江市 , 2 \n" "银川市 , 2 \n" "丹东市 , 2 \n" "包头市 , 2 \n" "西宁市 , 2 \n" "锦州市 , 2 \n" "桂林市 , 2 \n"
[1] "第 3 类"
[1] "宁波市 , 3 \n" "金华市 , 3 \n" "海口市 , 3 \n" "岳阳市 , 3 \n" "南充市 , 3 \n" "湛江市 , 3 \n" "重庆市 , 3 \n" "安庆市 , 3 \n" "宜昌市 , 3 \n"
[10] "常德市 , 3 \n" "赣州市 , 3 \n" "哈尔滨市 , 3 \n" "乌鲁木齐市 , 3 \n" "蚌埠市 , 3 \n" "徐州市 , 3 \n" "扬州市 , 3 \n" "成都市 , 3 \n" "泸州市 , 3 \n"
[19] "昆明市 , 3 \n" "烟台市 , 3 \n" "南宁市 , 3 \n" "平顶山市 , 3 \n" "北海市 , 3 \n" "沈阳市 , 3 \n" "贵阳市 , 3 \n" "韶关市 , 3 \n" "襄阳市 , 3 \n"
[28] "大连市 , 3 \n" "九江市 , 3 \n" "长春市 , 3 \n" "太原市 , 3 \n" "秦皇岛市 , 3 \n" "济宁市 , 3 \n" "兰州市 , 3 \n" "唐山市 , 3 \n" "吉林市 , 3 \n"
[37] "遵义市 , 3 \n" "洛阳市 , 3 \n" "大理白族自治州 , 3 \n" "呼和浩特市 , 3 \n"
[1] "第 4 类"
[1] "三亚市 , 4 \n" "西安市 , 4 \n"
[1] "第 5 类"
[1] "郑州市 , 5 \n" "福州市 , 5 \n" "天津市 , 5 \n" "石家庄市 , 5 \n" "长沙市 , 5 \n" "济南市 , 5 \n" "青岛市 , 5 \n" "惠州市 , 5 \n" "南昌市 , 5 \n"
>
你在逗我么?
于是我不停上网找,发现,还有一个输出到屏幕的方法哦,就是cat
函数,一用,诶发现可以了
for (i in 1:5) {
print(paste("第",i,"类"))
cat(paste(china[re[[i]],]$地区,",",i,"\n"))
}
[1] "第 1 类"
厦门市 , 1
北京市 , 1
无锡市 , 1
杭州市 , 1
广州市 , 1
深圳市 , 1
合肥市 , 1
上海市 , 1
南京市 , 1
武汉市 , 1
[1] "第 2 类"
温州市 , 2
泉州市 , 2
牡丹江市 , 2
银川市 , 2
丹东市 , 2
包头市 , 2
西宁市 , 2
锦州市 , 2
桂林市 , 2
[1] "第 3 类"
宁波市 , 3
........
三、为什么会这样子
其实,到底为什么cat和print会有这种不同呢?
这是一个迷,不过R语言输出格式问题这帖子有说过:
print输出的字符都是只能显示在控制台,而控制台只能显示文本,所以你所说的回车、制表符都是原样显示。
好像不错哦,于是我上官网看,找不到相应的解释(或者是我懒得找?)。
好吧,那我还是放弃了,等真正要做的时候再看呗。