導航:首頁 > 程序命令 > 命令行中的數據科學

命令行中的數據科學

發布時間:2022-05-30 16:32:07

㈠ 安卓中怎麼從命令行查看資料庫中的數據

1,進入到控制台中,輸入adb shell,進入到命令模式的環境中
2,輸入:cd /data/data/
3, 選擇你所在的資料庫文件,比如我的com.android.homework, 輸入命令:cd com.android.homework
4, 可以使用ls -l 命令查看當前目錄中的文件
5,輸入: cd databases 進入到資料庫文件中
6, ls -l 顯示你資料庫中你建立的資料庫
7, sqlite3 info.db 進入到你選擇的資料庫中
8, .tables :查看你建的表
9, select * from table_name;s 可以查看整個表的信息
10, 使用其他的SQL語句可以進一步對表進行操作,注意SQL語句必須用分號(;)結尾

㈡ 數據科學入門丨選python還是R

數據科學入門丨選Python還是R
對於想入門數據科學的新手來說,選擇學Python還是R語言是一個難題,本文對兩種語言進行了比較,希望能幫助你做出選擇。
我是德勤的數據科學家主管,多年來我一直在使用Python和R語言,並且與Python社區密切合作了15年。本文是我對這兩種語言的一些個人看法。
第三種選擇

針對這個問題,Studio的首席數據科學家Htley Wickham認為,比起在二者中選其一,更好的選擇是讓兩種語言合作。因此,這也是我提到的第三種選擇,我在文本最後部分會探討。
如何比較R和Python
對於這兩種語言,有以下幾點值得進行比較:
· 歷史:
R和Python的發展歷史明顯不同,同時有交錯的部分。
· 用戶群體:
包含許多復雜的社會學人類學因素。
· 性能:
詳細比較以及為何難以比較。
· 第三方支持:
模塊、代碼庫、可視化、存儲庫、組織和開發環境。
· 用例:
根據具體任務和工作類型有不同的選擇。
· 是否能同時使用:
在Python中使用R,在R中使用Python。
· 預測:
內部測試。
· 企業和個人偏好:
揭曉最終答案。
歷史

簡史:
ABC語言 - > Python 問世(1989年由Guido van Rossum創立) - > Python 2(2000年) - > Python 3(2008年)
Fortan語言 - > S語言(貝爾實驗室) - > R語言問世(1991年由Ross Ihaka和Robert Gentleman創立) - > R 1.0.0(2000年) - > R 3.0.2(2013年)
用戶群體
在比較Python與R的使用群體時,要注意:

只有50%的Python用戶在同時使用R。
假設使用R語言的程序員都用R進行相關「科學和數字」研究。可以確定無論程序員的水平如何,這種統計分布都是真實。
這里回到第二個問題,有哪些用戶群體。整個科學和數字社區包含幾個子群體,當中存在一些重疊。
使用Python或R語言的子群體:
· 深度學習
· 機器學習
· 高級分析
· 預測分析
· 統計
· 探索和數據分析
· 學術科研
· 大量計算研究領域
雖然每個領域幾乎都服務於特定群體,但在統計和探索等方面,使用R語言更為普遍。在不久之前進行數據探索時,比起Python,R語言花的時間更少,而且使用Python還需要花時間進行安裝。
這一切都被稱為Jupyter Notebooks和Anaconda的顛覆性技術所改變。
Jupyter Notebook:增加了在瀏覽器中編寫Python和R代碼的能力;
Anaconda:能夠輕松安裝和管理Python和R。
現在,你可以在友好的環境中啟動和運行Python或R,提供開箱即用的報告和分析,這兩項技術消除了完成任務和選擇喜歡語言間的障礙。Python現在能以獨立於平台的方式打包,並且更快地提供快速簡單的分析。
社區中影響語言選擇的另一個因素是「開源」。不僅僅是開源的庫,還有協作社區對開源的影響。諷刺的是,Tensorflow和GNU Scientific Library等開源軟體(分別是Apache和GPL)都與Python和R綁定。雖然使用R語言的用戶很多,但使用Python的用戶中有很多純粹的Python支持者。另一方面,更多的企業使用R語言,特別是那些有統計學背景的。
最後,關於社區和協作,Github對Python的支持更多。如果看到最近熱門的Python包,會發現Tensorflow等項目有超過3.5萬的用戶收藏。但看到R的熱門軟體包,Shiny、Stan等的收藏量則低於2千。
性能
這方面不容易進行比較。
原因是需要測試的指標和情況太多。很難在任何一個特定硬體上測試。有些操作通過其中一種語言優化,而不是另一種。
循環
在此之前讓我們想想,如何比較Python與R。你真的想在R語言寫很多循環嗎?畢竟這兩種語言的設計意圖不太相同。
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import numpy as npn",
"%load_ext rpy2.ipython"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"def do_loop(u1):n",
"n",
" # Initialize `usq`n",
" usq = {}n",
"n",
" for i in range(100):n",
" # i-th element of `u1` squared into `i`-th position of `usq`n",
" usq[i] = u1[i] * u1[i]n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"%%Rn",
"do_loop <- function(u1) {n",
" n",
" # Initialize `usq`n",
" usq <- 0n",
"n",
" for(i in 1:100) {n",
" # i-th element of `u1` squared into `i`-th position of `usq`n",
" usq[i] <- u1[i]*u1[i]n",
" }n",
"n",
"}"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1.58 ms ± 42.8 ?s per loop (mean ± std. dev. of 7 runs, 1000 loops each)n"
]
}
],
"source": [
"%%timeit -n 1000n",
"%%Rn",
"u1 <- rnorm(100)n",
"do_loop(u1)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"36.9 ?s ± 5.99 ?s per loop (mean ± std. dev. of 7 runs, 1000 loops each)n"
]
}
],
"source": [
"%%timeit -n 1000n",
"u1 = np.random.randn(100)n",
"do_loop(u1)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Python為0.000037秒,R為0.00158秒
包括載入時間和在命令行上運行:R需要0.238秒,Python需要0.147秒。強調,這並不是科學嚴謹的測試。
測試證明,Python的運行速度明顯加快。通常這並沒有太大影響。
除了運行速度外,對於數據科學家而言哪種性能更重要?兩種語言之所以受歡迎是因為它們能被用作命令語言。例如,在使用Python時大多時候我們都很依賴Pandas。這涉及到每種語言中模塊和庫,以及其執行方式。
第三方支持
Python有PyPI,R語言有CRAN,兩者都有Anaconda。
CRAN使用內置的install.packages命令。目前,CRAN上有大約1.2萬個包。其中超過1/2的包都能用於數據科學。
PyPi中包的數量超過前者的10倍,約有14.1萬個包。專門用於科學工程的有3700個。其中有些也可以用於科學,但沒有被標記。
在兩者中都有重復的情況。當搜索「隨機森林」時,PyPi中可以得到170個項目,但這些包並不相同。
盡管Python包的數量是R的10倍,但數據科學相關的包的數量大致相同。
運行速度
比較DataFrames和Pandas更有意義。
我們進行了一項實驗:比較針對復雜探索任務的執行時間,結果如下:

在大多數任務中Python運行速度更快。
http://nbviewer.jupyter.org/gist/brianray/
可以看到,Python + Pandas比原生的R語言DataFrames更快。注意,這並不意味著Python運行更快,Pandas 是基於Numpy用C語言編寫的。
可視化

這里將ggplot2與matplotlib進行比較。
matplotlib是由John D. Hunter編寫的,他是我在Python社區中最敬重的人之一,他也是教會我使用Python的人。
Matplotlib雖然不易學習但能進行定製和擴展。ggplot難以進行定製,有些人認為它更難學。
如果你喜歡漂亮的圖表,而且無需自定義,那麼R是不錯的選擇。如果你要做更多的事情,那麼Matplotlib甚至互動式散景都不錯。同樣,R的ShinnyR能夠增加交互性。
是否能同時使用
可能你會問,為什麼不能同時使用Python和R語言?
以下情況你可以同時使用這兩種語言:
· 公司或組織允許;
· 兩種都能在你的編程環境中輕松設置和維護;
· 你的代碼不需要進入另一個系統;
· 不會給合作的人帶來麻煩和困擾。
一起使用兩種語言的方法是:
· Python提供給R的包:如rpy2、pyRserve、Rpython等;
· R也有相對的包:rPython、PythonInR、reticulate、rJython,SnakeCharmR、XRPython
· 使用Jupyter,同時使用兩者,例子如下:

之後可以傳遞pandas的數據框,接著通過rpy2自動轉換為R的數據框,並用「-i df」轉換:

http://nbviewer.jupyter.org/gist/brianray/
預測
Kaggle上有人對開發者使用R還是Python寫了一個Kernel。他根據數據發現以下有趣的結果:

· 如果你打算明年轉向Linux,則更可能是Python用戶;
· 如果你研究統計數據,則更可能使用R;如果研究計算機科學,則更可能使用Python;
· 如果你還年輕(18-24歲),則更可能是Python用戶;
· 如果你參加編程比賽,則更可能是Python用戶;
· 如果你明年想使用Android,則更可能是Python用戶;
· 如果你想在明年學習SQL,則更可能是R用戶;
· 如果你使用MS office,則更可能是R用戶;
· 如果你想在明年使用Rasperry Pi,則更可能是Python用戶;
· 如果你是全日制學生,則更可能是Python用戶;
· 如果你使用的敏捷方法(Agile methodology),則更可能是Python用戶;
· 如果對待人工智慧,比起興奮你更持擔心態度,則更可能是R用戶。
企業和個人偏好
當我與Googler和Stack Overflow的大神級人物Alex Martelli交流時,他向我解釋了為什麼Google最開始只官方支持少數幾種語言。即使是在Google相對開發的環境中,也存在一些限制和偏好,其他企業也是如此。
除了企業偏好,企業中第一個使用某種語言的人也會起到決定性作用。第一個在德勤使用R的人他目前仍在公司工作,目前擔任首席數據科學家。我的建議是,選擇你喜歡的語言,熱愛你選擇的語言,起到領導作用,並熱愛你的事業。
當你在研究某些重要的內容時,犯錯是難以避免的。然而,每個精心設計的數據科學項目都為數據科學家留有一些空間,讓他們進行實驗和學習。重要的是保持開放的心態,擁抱多樣性。
最後就我個人而言,我主要使用Python,之後我期待學習更多R的內容。

㈢ 哪裡有命令行模式下的科學計算器(要支持科學計算)

試下python 的numpy庫

㈣ 如何使用 Docker 快速配置數據科學開發環境

Docker今年應該算是很熱門的技術了,之前一直沒怎麼真正地去了解、接觸。通過翻譯這篇簡單的教程,我同時也對Dcoker有了入門的了解。Docker和我目前使用的Vagrant有些類似之處,都是通過類似鏡像的文件創建孤立的系統環境。只是Docker容器中已經安裝了所需的包,而我目前所了解的Vagrant

box還沒有這個功能。當然,應該是我使用程度不深的原因。不管怎麼說,Docker確實是跨平台開發的利器。譯文如果有什麼不準確的地方,請大家指正。

數據科學開發環境配置起來讓人頭疼,會碰到包版本不一致、錯誤信息不熟悉和編譯時間漫長等問題。這很容易讓人垂頭喪氣,也使得邁入數據科學的這第一步十分艱難。而且這也是一個完全不常見的准入門檻。

還好,過去幾年中出現了能夠通過搭建孤立的環境來解決這個問題的技術。本文中我們就要介紹的這種技術名叫Docker。Docker能讓開發者簡單、快速地搭建數據科學開發環境,並支持使用例如Jupyter notebooks等工具進行數據探索。

要使用Docker,我們要先下載含有相關包(package)和數據科學工具的鏡像文件。之後,我們可以通過該鏡像,在數秒之內就啟動一個數據科學開發環境,免去了手動安裝包的麻煩。這個環境,也被成為Docker容器(container)。容器解除了配置的問題——當你啟動一個Docker容器後,它就已經處於了良好的狀態,所有的包都是可以正常運轉的。

除了降低進入數據科學的門檻之外,Docker還可以讓我們快速搭建擁有不同Python版本和安裝了不同包的孤立環境,不像虛擬環境(virtualenv)那樣還要重新安裝包。

在本文中,我們將介紹Docker的基礎知識,如何安裝Docker以及如何利用Docker容器快速地在本地機器上搭建數據科學環境。

虛擬機

能夠創建虛擬機的軟體已經問世數十年,可以讓你在本地電腦上模擬其他的系統環境。舉個例子,即使你的電腦運行的是Windows操作系統,你仍可以通過虛擬機運行Linux系統。這可以讓你在不重裝系統的前提下,使用Linux——也就是說,Linux系統是虛擬化運行的,所以你可以從Windows系統訪問虛擬機。基本上,你可以在點擊該軟體的程序圖標之後,看到彈出的窗口中乃是一個Linux系統桌面。而虛擬機需要鏡像來啟動,也就是你必須先擁有一個目標系統的鏡像,才能啟動相應的虛擬機。如果你想使用Linux,你使用的鏡像就得包含創建Linux環境所必須的全部文件。

容器

盡管虛擬機有諸多好處,例如能夠使在Windows平台進行Linux開發成為現實,但是也有著自身的缺陷。首先,虛擬機的啟動時間很長,要消耗大量的系統資源。另外,在利用鏡像創建完虛擬機中,很難在安裝完所需要的包後,再將這個鏡像保存,創建為新的鏡像。而Docker提供的Linux容器,則通過讓多個孤立環境在同一台機器上運行,解決了這個問題。你可以把容器看作是一種更快、更簡單地使用虛擬機的方法。

但是,容器的使用卻有一點麻煩,而且管理和發布容器鏡像也不容易。作為開發人員,我們希望能夠快速下載並啟動一個擁有指定包和工具配置的數據科學環境。例如,你肯定會希望能快速啟動一個安裝了Jupyter notebook、spark和pandas的容器。

Docker

Docker容器的里層包裹的是Linux容器(a layer over Linux
containers),可以支持更簡單地對容器進行管理和發布。使用Docker,可以很容易地下載具備相應包的鏡像,並且快速啟動。另外,Docker是跨平台的,支持包括Mac、Windows和Linux等系統。

作為創建孤立Python環境的另一種方式,虛擬環境(virtual environment)也有這些優勢。但是Docker相較於虛擬環境的主要優勢有:

能夠快速啟動。如果你想馬上就開始進行數據分析,使用Docker就免去了你等待各種包進行安裝的時間。
配置測試無誤。很多時候,要正常安裝Python包會,需要以安裝某些系統包為前提,並只有在進行相應設置後才能正常使用。如果設置不當,會引起一些很奇怪的錯誤。但是使用Docker後,這些包就已經配置好了,可以立即使用。
跨平台一致性。Python中的包是可以跨平台使用的,但是在Windows和Linux平台下有些不同,而且還有部分依賴包無法在Windows中安裝。但是由於Docker容器運行的都是Linux環境,所以它們是高度一致的。
能夠設置checkpoint並且進行恢復。你可以往Docker鏡像中安裝包,然後將那個checkpoint下的環境創建成一個新的鏡像。這讓你能夠快速撤銷或者回滾配置。

運行一個Docker鏡像,就相當於創建了一個Docker容器。在本文中,我們在容器中運行一個Jupyter notebook,然後通過瀏覽器界面來處理數據。

安裝Docker

第一步就是安裝Docker。Docker官方為Windows和Mac用戶提供了一個簡便安裝過程的圖形界面安裝器。下面是每個操作系統的安裝指南。

Mac OS
Linux
Windows

在安裝時,你需要使用shell命令提示符(shell prompt)。shell命令提示符(shell
prompt)也被稱為終端或命令行,是在你的機器上通過文本界面而非圖形界面運行命令的一種方式。例如,你可以在Windows系統中雙擊記事本就可以打開一個文本編輯器,也可以在Linux終端中輸入nano達到這個目的。Docker提供了一個預先配置好的shell,可以用來運行Docker命令。請按照下面的方法操作:

Mac OS —— 從Launchpad中打開Docker Quickstart Terminal程序。詳情見本篇文章。
Linux —— 打開任意bash終端,就可以使用docker命令。
Windows —— 雙擊桌面上的Docker QuickstartTerminal程序的圖標。詳情見本篇文章。

下文在提到需要運行Docker命令或輸入某個命令時,你都需要使用這個shell命令提示符。

下載鏡像

下一步是下載你需要的鏡像。下面是我們網站(dataquestio)目前提供的數據科學開發專用鏡像:

dataquestio/python3-starter —— 這個鏡像已經安裝好了Python 3, Jupyter notebook和許多其他流行的數據科學庫,包括numpy,pandas,scipy,scikit-learn和nltk。

dataquestio/python2-starter —— 這個鏡像已經安裝好了Python 2, Jupyter notebook和許多其他流行的數據科學庫,包括numpy,pandas,scipy,scikit-learn和nltk。

你可以通過輸入docker pull IMAGE_NAME命令,下載相應的鏡像。如果你想下載dataquestio/python3-starter這個鏡像,那麼你需要在終端輸入docker pull dataquestio/python3-starter命令。輸入這段命令後,程序會自動從Docker Hub下載鏡像。Docker Hub與Github類似,不過卻是Docker鏡像的一個中樞。它會將相應的鏡像文件下載至你的本地機器,這樣你才能利用該鏡像創建容器。

新建一個文件夾

在本地創建一個文件夾,用於存放notebooks。這個文件夾中將儲存你所有的工作文件,並會持續存在於你的機器中,即使是你銷毀了docker容器。在這里,我們將創建下面這個文件夾,/home/vik/notebooks。

運行鏡像

鏡像下載完成後,你可以通過docker run運行該鏡像。我們還需要傳入一些選項,確保鏡像配置正確。

-p 選項用於設置虛擬機的埠,讓我們可以在本地訪問Jupyter notebook伺服器。

-d 選項用於以detached模式運行容器,也就是作為背景進程運行。

-v 選項讓我們指定在本地機器中使用哪個文件夾存儲notebook。

完整的運行命令是類似這樣的:docker run -d -p 8888:8888 -v /home/vik/notebooks:/home/ds/notebooks dataquestio/python3-starter。

你應該將/home/vik/notebooks更改為你用於存儲文件的地址。另外,應該把dataquestio/python3-starter更改為自己喜歡的docker鏡像。

執行docker run命令將會創建一個Docker容器。這是與你的本地機器相隔絕的,也可以把它看作是一台單獨的電腦。在容器內部,會運行一個Jupyter notebook伺服器,並可以讓我們使用許多數據科學工具包。

另外,docker run命令也會在終端列印出容器的編碼(container id ),在通過其他docker容器對該容器進行修改時,就必須要使用這個編碼。在下文中我們稱該編碼為容器編碼。

查看notebook伺服器

如果你的系統是Linux,那麼下一步非常簡單——只需要在瀏覽器中打開localhost:8888,之後應該就能看到運行中的notebook。如果你使用的是Windows或OSX,之前也按照Docker官方安裝指南進行了操作,並且安裝過程中使用了docker-machine,那麼本地機器的名稱是default,運行docker-machine ip default命令就可以得知docker容器的ip。如果使用了其他的名字,例如dev,那在命令中將default替換為dev即可。接下來,在瀏覽器中訪問CONTAINER_IP:8888就可以看到notebook(將CONTAINER_IP替換為你的容器編碼)。

創建一個notebook

到了這一步,你可以創建一個新的Jupyter notebook測試下這個孤立的開發環境。試試輸入下面這個scikit-learn的例子:

from sklearn import datasets
from sklearn.cross_validation import cross_val_predict
from sklearn import linear_model
import matplotlib.pyplot as plt
%matplotlib inline

lr = linear_model.LinearRegression()
boston = datasets.load_boston()
y = boston.target

predicted = cross_val_predict(lr, boston.data, y, cv=10)

fig, ax = plt.subplots()
ax.scatter(y, predicted)
ax.plot([y.min(), y.max()], [y.min(), y.max()], 'k--', lw=4)
ax.set_xlabel('Measured')
ax.set_ylabel('Predicted')
plt.show()

添加數據文件

如果你想往開發環境中添加數據文件,你有三個選擇。第一個選擇,就是將文件放在你之前創建用來存放notebook的文件夾中。你放那裡的任何文件將可以自動通過Jupyter notebook中訪問。

第二種選擇就是使用docker cp命令。docker cp可以從本地機器復制文件至容器中,反之亦然。假設你想拷貝/hom/vik/data.csv文件至一個id為4greg24134的容器中,你可以輸入下面的命令:docker cp /home/vik/data.csv 4greg24134:/home/ds/notebooks。這會將data.csv文件拷貝到容器中用於存放notebook的文件夾中。當然,你可以選擇將文件放到容器中的任何地方,但是把它們放在存放notebook的文件夾忠厚,你就可以輕松地通過Jupyter notebook訪問這些文件了。

第三個選擇就是使用Jupyter notebook首頁右上方的upload按鈕。這可以讓你選擇一個文件,並上傳到容器中用於存放notebook的文件夾中。

不管你使用哪種方法,要想在Jupyter notebook中載入文件,需要按照類似下面的方式進行:

import pandas
data = pandas.read_csv("data.csv")

復制容器中的數據文件

你可能會需要從容器中拷貝文件至本地機器。最容易的辦法就是把文件放置在/home/ds/notebooks文件夾中,這樣的話這些文件就會自動映像到本地機器。

另一種方法也就是利用docker cp命令。假設你想從id為4greg24314的容器中,把/home/ds/notebooks/data.csv文件拷貝至本地機器的/home/vik/文件夾中,你可以輸入下面的命令:cp 4greg24134:/home/ds/notebooks/data.csv /home/vik/data.csv。

最後一種方法就是使用Jupyter界面中的download選項。在網頁模式下點擊一個不是notebook的文件,將會將其下載至本地。如果你已經打開了一個notebook,那麼可以先點擊File,然後選中download as就可以下載至本地。

安裝更多的工具包

如果你想在容器中安裝更多的工具包,你可以通過正常的bash命令行命令就可以實現。要想在容器中執行這些命令,你需要運行docker exec命令。這個命令接受容器的id作為參數,以及一個期望運行的命令。例如輸入docker exec -it 4greg24134 /bin/bash將會在編碼為4greg24134的容器中開啟一個shell命令提示符(shell prompt)。-it選項確保我們在容器中打開了一個輸入會話,並且可以輸入命令。

在運行docker exec命令之後,你就會看到容器中的shell命令提示符(shell prompt)出現。容器此時正通過一個名為ds的虛擬環境運行Python程序,這個虛擬環境已經是處於激活狀態的。

接下來,只需要輸入pip install PACKAGE_NAME就可以安裝其他的工具包。例如,你可以使用pip install requests來安裝requests。

當你希望退出容器的shell終端時,只需要輸入exit即可。

關閉docker容器

在完成數據處理工作之後,你就可以通過docker rm -f CONTAINER_ID來停止docker容器。你應該輸入之前獲得的容器編碼。如果你忘了,你可以運行docker ps查看。容器停止運行之後,notebooks會繼續存放在你本地用於存放的文件夾中。

㈤ 使用命令行怎樣對mysql中的資料庫進行操作

用命令行進入mysql方法:
windows打開命了行,在左下角開始,運行,cmd,mysql
然後就要讓你數據密碼的,當然前提是你的mysql安裝正確,網上有好多圖文並茂的安裝教程。開始,運行,cmd [ ,cd mysql安裝目錄/bin ], mysql -u userName -p Password先用CD命令進到mysql的BIN目錄
然後 mysql -u root -p
再輸入ROOT的密碼就行了。

java 中 用命令行參數接收輸入 如何判斷接收的數據是什麼數據類型

一、在命令行或控制台中接收的數據,都是字元串型,需要強制轉換。
強制轉換時,需做空判斷,如 if(str != null && !str.trim().equals("")){
int i = Integer.parseInt(str);}
二、其他情況判斷數據類型時,可以用java的反射機制。舉個例子:
import java.util.HashMap;
import java.util.Map;
public class Test {
public static void main(String aaa[]) {
Map m = new HashMap();

String s1 = "String1";
String s2 = "String2";

int i1 = 5;
double i2 = 10.5;

m.put(1, s1);
m.put(2, i1);
m.put(3, i2);
m.put(4, s2);

for (int i = 1; i <= m.size(); i++) {
Class returnType = m.get(i).getClass();
System.out.println("return type is of type: "
+ returnType.getSimpleName());
}
}
}

㈦ 怎麼用命令行的方式查詢資料庫表中有哪些欄位

這個資料庫類型緊密相關的

資料庫大多有自己的系統表來存放這些元數據
舉個sqlserver的例子

select object_name(c.id) as 表名
,c.name as 欄位名
,t.name 數據類型
,c.length 長度

,c.prec as 精度
,p.value as 欄位說明
,m.text as 默認值
,case when c.status=0x80 then 1 else 0 end 標識
,c.iscomputed 是否已計算該列的標志
,c.isnullable 是否允許空值
,c.isoutparam 是否輸出參數
from syscolumns c
inner join systypes t on c.xusertype=t.xusertype
left join sysproperties p on c.id=p.id and c.colid = p.smallid
left join syscomments m on c.cdefault=m.id
where objectproperty(c.id,'IsUserTable')=1 and object_name(c.id)='dat_deptinfo'

閱讀全文

與命令行中的數據科學相關的資料

熱點內容
程序員跑需求 瀏覽:222
s7伺服器怎麼設置 瀏覽:341
2k17連接不上伺服器怎麼辦 瀏覽:491
人力資源系統開源源碼 瀏覽:685
河北視頻加密有哪些 瀏覽:649
桌面兩個微信怎麼都加密碼 瀏覽:276
長沙單身程序員 瀏覽:883
伺服器下載異常是因為什麼 瀏覽:703
java防刷 瀏覽:842
3dmax取消當前命令 瀏覽:359
顯示當前模式下所有可執行的命令 瀏覽:758
為什麼程序員拿了股份還要高薪 瀏覽:947
電腦運行命令里的記錄能刪嗎 瀏覽:697
linuxwss 瀏覽:848
一個軟體需要登錄伺服器地址 瀏覽:923
哪裡有解壓程序 瀏覽:299
java靜態方法內存 瀏覽:545
我的世界ec伺服器如何帶vip 瀏覽:737
什麼是由解析器域名和伺服器構成 瀏覽:414
自動識別電影信息源碼 瀏覽:850